Написал я недавно себе скриптик, так ради баловства и изучения скриптописания, который сменяет фон рабочего стола на рандомно выбранный из определённой папки, ну и собственно, озадачился тем, чтобы как-то автоматизировать его работу и тут мне осенила голову гениальная идея.
Все вероятно видели Windows 7, со всеми её аэро эффектами и сменой фонов рабочего стола через определённые промежутки времени, так вот, я, как человек давно проникнувшийся идеей open source и GNU, и откровенно недолюбливаюший Windows решил, что чем Ubuntu хуже, нужно сделать смену фонов рабочих столов. Итак я узнал про cron. Переместил скриптик в директорию /etc/cron.hourly, сделал скриптик исполняемым командой chmod +x и стал ждать. Однако, не через час, не через два, не через пять смены фона рабочего стола не произошло, поэтому, я решил спросить здесь совета, может я что упустил, или неправильно сделал.
код скрипта:
#!/bin/bash
export DIR='/home/volodyuka/pictures/'
export NUMBER=$RANDOM
export TOTAL=0
for f in `ls $DIR`
do
let "TOTAL += 1"
done
let "NUMBER %= TOTAL"
export CURRENT=0
for f in `ls $DIR`
do
if [ $CURRENT = $NUMBER ]
then
/usr/bin/gconftool-2 -t string -s /desktop/gnome/background/picture_filename $DIR/$f
break
fi
let "CURRENT += 1"
done
код crontab:
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#