Я знаю, что этот ответ немного запоздал, но, поскольку он может помочь некоторым людям, я публикую его.
Из кода 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.Кроме того, файл, который вы хотите редактировать, это background.list, а не backdrops.list.И, наконец, я считаю, что использование killall в этом случае является излишним, поскольку вы можете просто перезагрузить xfdesktop.
Я протестировал его на своем компьютере (Linux Mint Debian Edition), и, похоже, он отлично работает.
Надеюсь, это поможет.=)
EDIT: я забыл упомянуть, что вы должны добавить DISPLAY =: 0.0 перед вашей командой, в crontab.Это дает
*/1 * * * * DISPLAY=:0.0 wallpaper.sh