Часто я хочу, чтобы мой компьютер выполнял одну задачу, но не сейчас. Например, я мог бы через 30 минут уведомить меня о том, что пора уходить с работы. Или, может быть, я хочу провести сложный тест через 2 часа, когда я уверен, что большинство остальных уйдут из офиса.
Я знаю, что мог бы создать задание cron для запуска в определенное время дня, но это кажется большой работой, когда все, что я хочу, это что-то простое, например: «Запустить этот скрипт за 10 минут», кроме того, мне нужно было бы разобраться во сколько это будет на самом деле X минут / часов / дней, а затем удалите задание cron после его завершения.
Конечно, я мог бы просто написать этот скрипт и запустить его в фоновом режиме:
sleep X
do_task
Но это просто кажется неуклюжим: мне либо нужен новый сценарий для каждой задачи, либо мне нужно написать и поддерживать сценарий, достаточно общий, чтобы делать то, что я хочу, не говоря уже о том, что мне нужно выяснить, сколько секунд в минутах, часы или дни, которые я хочу.
Нет ли уже устоявшегося решения этой проблемы?
источник
Ответы:
Я использую простой скрипт с
at
:Вы можете так же легко трубе
$message
доnotify-send
илиdzen
если вы хотите на рабочем столе уведомление вместо электронной почты.источник
+ 2 days
) и разные форматы (YYYY-MM-DD
). Обратитесь к man-странице для более подробной информации.Общий способ использования
at
являетсяНапишите скрипт, который делает то, что вы хотите сделать. Используйте полный путь для всех внешних команд, зарегистрируйте вывод в соответствующий файл журнала или отправьте его по почте.
Протестируйте скрипт.
Активируйте его с помощью
at -f YOURSCRIPT -t MMDDhhmm
источник