Я знаю, что этот ответ немного запоздал, но, поскольку он может помочь некоторым людям, я публикую его.
Из кода septi плюс некоторые модификации, вот мое решение:
#!/bin/bash
wallpaperdir="$HOME/wallpaper"
files=($wallpaperdir/*)
randompic=`printf "%s\n" "${files[RANDOM % ${#files[@]}]}"`
echo -e "# xfce backdrop list\n$randompic">$HOME/.config/xfce4/desktop/backdrop.list
xfdesktop --reload
Одинарные кавычки должны быть заменены двойными, чтобы компьютер правильно интерпретировал часть $HOME. Кроме того, вы хотите отредактировать файл backdrop.list, а не backdrops.list. И, наконец, я считаю, что использование killall в этом случае излишне, так как вы можете просто перезагрузить xfdesktop.
Я протестировал его на своем компьютере (Linux Mint Debian Edition), и он работает отлично.
Надеюсь, поможет. знак равно
РЕДАКТИРОВАТЬ: я забыл упомянуть, что вы должны добавить DISPLAY=:0.0 перед вашей командой в crontab. Это дает
*/1 * * * * DISPLAY=:0.0 wallpaper.sh
person
Migwel
schedule
20.08.2012