Ubuntu 12.04 自動切換桌面背景

以前在gnome2時使用gconftool可以改變ubuntu的桌面背景的,裝了12.04後,發現不行了,研究了一下,原來改用gsettings這個工具了.

我卸載了unity,裝的是gnome-panel桌面.

腳本如下:

#!/bin/bash
confFile=".switchbg.conf"
cd $(dirname $0)
filepath=$PWD
find $filepath | grep -E ".jpg$|.png$|.JPG$|.PNG$" > $confFile
cnt=`cat $confFile | wc -l`

while true
do
line=$(($RANDOM % $cnt + 1))
bgfile=$(head -n $line $confFile | tail -n 1)
bgfile="'file://$bgfile'"
bkfile=$(gsettings get org.gnome.desktop.background picture-uri)
echo $bkfile
echo $bgfile
if [ $bkfile != $bgfile ]
then
break
fi
done
gsettings set org.gnome.desktop.background picture-uri $bgfile
rm -f $confFile

保存後加到crontab裏發現腳本的gsettings set不起作用.所以只能改一下了:

#!/bin/bash
confFile=".switchbg.conf"
changedtime=600
cd $(dirname $0)
filepath=$PWD
find $filepath | grep -E ".jpg$|.png$|.JPG$|.PNG$" > $confFile
cnt=`cat $confFile | wc -l`
while true
do
while true
do
line=$(($RANDOM % $cnt + 1))
bgfile=$(head -n $line $confFile | tail -n 1)
bgfile="'file://$bgfile'"
bkfile=$(gsettings get org.gnome.desktop.background picture-uri)
if [ $bkfile != $bgfile ]
then
break
fi
done
gsettings set org.gnome.desktop.background picture-uri $bgfile >> tmp.log
sleep $changedtime
done
rm -f $confFile
讓腳本在啓動時自動加載就好了.間隔時間修改changedtime的值就行了,單位爲秒.



發佈了30 篇原創文章 · 獲贊 5 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章