emostar 19.01.2013 21:51

Есть вопрос!Напоминание по крону

Добрый вечер, господа.
Я привык большинство своих проблем решать с помощью линукса.
Вот такое вот задание:

Скрипт рандомно (!) в теории должен выводить следующее:
1
2
#!/bin/bash
notify-send -u critical -i /usr/share/icons/Mint-X/status/48/nm-adhoc.png "TIME TO FUCK!!!"


При чем в период с 18 до 08 часов, и желательно со звуковым уведомлением.
Заранее спасибо)


Тэги: bash cron random скрипт
+ 0 -
Похожие Поделиться

cppmm 20.01.2013 16:19 #
 1
2
3
4
5
6
7
8
9
10
11
#!/bin/bash

while true
do
sleep 1
HOURS=$(date +%k)
if [ "$HOURS" -ge "8" ] && [ "$HOURS" -le "18" ]
then
[ $[ $RANDOM % 6 ] == 0 ] && echo "Тут вместо echo длелаем уведомление средствами DE. К примеру, для KDE, это будет kdialog. Парметры в мане."
fi
done


Пускаешь срипт в фоне руками или прописываешь в автозагрузку.
Частоту выдачи подстроишь под себя с помощью увеличения интервала sleep и/или накрутки рандома(в данный момент оно в одном случае из шести выдаёт сообщение). CRON такого не умеет, насколько мне известно.
citi7en 21.01.2013 13:42 #
Можно, наверно, ещё при помощи рандома выставить значение для sleep в интервале от 0 до 16 часов, и запускать этот скрипт в 18 часов кроном.
Так хоть рандом не надо дёргать очень часто.
uscr 21.01.2013 16:50 #
Не знаю, работает ли крон с "обратными" диапазонами, но можно попробовать такую запись:

* 18-8 * * * user [ $[ $RANDOM % 6 ] == 0 ] && echo "ВРЕМЯ ТРАХА!"

Звуковое уведомление можно сделать c помощью beep

dront78 21.01.2013 18:19 #
можно тупо ребут по крону делать. BIOS сам бибикнет при старте