分享一个自动更换桌面壁纸的脚本

支持ubuntu 18.04、ubuntu mate、ubuntu kylin 18.04。

#!/bin/bash

# 设定壁纸目录路径:
DIR=/usr/share/backgrounds

# 设定切换桌面背景的时间间隔,单位为'秒':
SEC=300

# ubuntu 18.04:
if [ "$DESKTOP_SESSION" = "ubuntu" ] || [ "$XDG_CURRENT_DESKTOP" = "ubuntu:GNOME" ]; then
  while true;do
   sleep "$SEC"
   PIC=$(ls $DIR/*.jpg | shuf -n1)
   gsettings set org.gnome.desktop.background picture-uri "$PIC"
  done
# ubuntu mate:
elif [ "$DESKTOP_SESSION" = "mate" ] || [ "$XDG_CURRENT_DESKTOP" = "MATE" ]; then
  while true;do
   sleep "$SEC"
   PIC=$(ls $DIR/*.jpg | shuf -n1)
   gsettings set org.mate.background picture-filename "$PIC"
  done
# ubuntu kylin 18.04:
elif [ "$DESKTOP_SESSION" = "ukui" ] || [ "$XDG_CURRENT_DESKTOP" = "UKUI" ]; then
  while true;do
   sleep "$SEC"
   PIC=$(ls $DIR/*.jpg | shuf -n1)
   gsettings set org.mate.background picture-filename "$PIC"
  done
fi

默认壁纸目录路径为/usr/share/backgrounds,你可以自行修改,目录名称最好不要带有空格。
$SEC变量可以设定切换桌面背景的时间间隔,单位为’秒’。