Я хотел бы завершить работу своего компьютера половина первого каждый день и могу сделать это с "эхом "30 0 * * */sbin/shutdown-h теперь"> myrootcron.sh", но что, если я хочу отменить то завершение работы или пропустить его, потому что у меня есть происходящая загрузка?
Я не знаю то, о чем весь Ваш echo
материал, но если Вы просто хотите проверить, работает ли конкретный процесс, можно использовать pgrep
в расписании. Это возвратится 0
если, если находит процесс, который соответствует.
я предполагаю, что Вы загружаете wget
, но можно просто изменить это на любой процесс, который Вы ожидали бы видеть живой (использование htop
для осмотра системы при загрузке, если Вы не уверены.)
30 0 * * * pgrep wget >/dev/null || shutdown -h now
, Если (как выше) Вы только выполняете это один раз в день, и это не инициировало из-за загрузки, это не завершит работу до следующего дня. Вы могли изменить это для выполнения его каждый час между 0:30 и 7:30:
30 0-7 * * * pgrep wget >/dev/null || shutdown -h now