15 нояб. 2012 г.

Будильник в cron

Требовалось мне обычный будильник для linux системы Xubuntu 12.10, что бы он мог меня уведомлять о трех событиях звуком и всплывающим уведомление каждый рабочий день в 11:55, 13:00, 17:08.

Пробовал-перепробовал я разные версии GUI будильников и, то он не срабатывал, то каждый раз нужно было включать будильник после выключения, то еще какие то погодные условия на него действовали - одним словом надоело и я вспомнил о замечательном демоне-планировщике задач для Unix подобных систем Cron, и взявшись за faq cron у меня вышел не плохой звуковой будильник - всплывающее уведомление по требуемому мне времени.

Для начала командой
export EDITOR='nano'
я указываю, что редактировать cron задачи я буду текстовым редактором nano ибо vi я так и не осилил.
Дальше команда
crontab -e
мне открыла любимый мною редактор для редактирование задач cron, в который я внес такие данные

00 13 * * 1-5 paplay /usr/share/sounds/freedesktop/stereo/alarm-clock-elapsed.oga
55 11 * * 1-5 DISPLAY=:0.0 zenity --warning --text="ОБЕД"
08 17 * * 1-5 DISPLAY=:0.0 zenity --warning --text="ДОМОЙ"
54 11 * * 1-5 paplay /usr/share/sounds/freedesktop/stereo/alarm-clock-elapsed.oga
08 17 * * 1-5 paplay /usr/share/sounds/freedesktop/stereo/alarm-clock-elapsed.oga


что вкратце, на примере первой строки, означает

00 - минуты
13 - часы
* - каждый день
* - каждый месяц
1-5 - каждый рабочий день (воскресенье 0)
paplay - команда проиграть
/usr ... - путь к проигрыванию файла


а теперь кратко о второй строке

55 - минуты
11 - часы
* - каждый день
* - каждый рабочий день (воскресенье 0)
DISPLAY=:0.0 - вывод на экран команды
zenity --warning --text="ОБЕД" - сама команда которая будет выводиться.


P.S. Мне помогла статья на вики

Добавлено 29.11.2012 15:26
В связи с желанием осуществлять отдых от компьютера в конфигурационный файл cron была добавлена строчка
*/30 8-17 * * 1-5 DISPLAY=:0.0 zenity --warning --text="ВСТАВАЙ! ВСТАВАЙ! ВСТАВАЙ ОТДОХНИ ОТ КОМПЬЮТЕРА!"; sleep 5m; paplay /usr/share/sounds/freedesktop/stereo/alarm-clock-elapsed.oga
что в итоге означает, вывести на экран текст каждых 30 минут, а после вывода текста проходит еще 5 минут и осуществляется звуковой сигнал о окончании перерыва.
crontab -l - просмотреть список задач
crontab -e -u ИмяПользователя - откроет для редактирования планировщик только для данного пользователя ибо для каждого пользователя имеется свой планировщик задач и задачи
gnome-schedule - GUI утилита, которая жуть какая глючная так как срабатывала раз через раз.
 

CopyPaste Copyright © 2017 - |- Шаблон создан O Pregador - |- Отредактирован myr4ik07