Этот скрипт должен ставить случайные обои во
Fluxbox'e, но он почему-то не работает.
Вот скрипт:
# Пути к папкам с обоями
bgPathes="~/.pictures/NewWallpapers
~/.pictures/Wallpapers"
# Выбираем папку с обоями
bgPath=`echo "$bgPathes"|sed $((RANDOM%\`echo "$bgPathes"|wc -l\`))\!d`
# Сосотавляем лист с обоями
bgList=`find "$bgPath" -name '*.jpg'`
# Выбираем случайную обою
bgFile=`echo "$bgList"|sed $((RANDOM%\`echo "$bgList"|wc -l\`))\!d`
# Ставим на рабочий стол
fbsetbg -f "$bgFile"
Вот результат:
sed: -e выражение #1, символ 2: недопустимое использование строки адреса 0
find: невозможно искать `': Нет такого файла или каталога
sed: -e выражение #1, символ 2: недопустимое использование строки адреса 0
Я в скриптописании новичок. Подскажите, что я делаю не так?
Пользователь решил продолжить мысль 31 Июля 2012, 21:50:46:
Работает так:
# Пути к папкам с обоями
bgPathes="/home/sap/.pictures/Wallpapers
/home/sap/.pictures/NewWallpapers"
# Выбираем случайную папку
bgPRandm=`echo $[$RANDOM % \`echo "$bgPathes"|wc -l\` + 1]`
bgPath=`echo "$bgPathes"|sed $bgPRandm\!d`
# Сосотавляем лист с обоями
bgList=`find -L "$bgPath" -name '*.jpg'`
# Выбираем случайную обою
bgFRandm=`echo $[$RANDOM % \`echo "$bgList"|wc -l\` + 1]`
bgFile=`echo "$bgList"|sed $bgFRandm\!d`
# Ставим на рабочий стол
fbsetbg -f "$bgFile"
Но это как-то некрасиво выглядит... Неуверен, что правильно написал
