На этот вопрос уже есть ответ:
Я хочу написать скрипт, который добавить задание cron в мой crontab, но без вмешательства пользователя, например, редактировать файл с помощью crontab -e
. Есть ли способ программно управлять заданиями cron из командной строки? Любые предложения о том, как это сделать? Заранее спасибо.
Чтобы установить crontab:
echo "1 1 * * * test" | crontab -
должны сделать свое дело.
Обратите внимание, что этот заменяет весь crontab. Вы должны сохранить значение, которое у него было, с crontab -l
, если вы просто хотите добавить / отредактировать вещи. Например,
(crontab -l && echo "1 1 * * * test") | crontab -
добавит строку в ваш crontab.
Как насчет следующего:
crontab -l | some-editing-command | EDITOR=cat crontab -e
первая часть канала перечисляет текущий crontab, вторая часть, как предполагается, изменяет его разумным способом, и третья часть переустанавливает его с помощью cat
как "редактор", как предложено @muru.