Справка, обновляющая запись крона с помощью регулярных выражений

привет я пытаюсь обновить запись крона НЕ при помощи crontab-e, а командами оболочки. Например, запись крона похожа на это:

10 * * * * /home/localuser/foo.sh -b 1 -h 4 > foo_output.sh 2>&1

Нет я должен отредактировать часть параметров командной строки ТОЛЬКО т.е.

-b 1 -h 4

к чему-то еще, что будет входить от пользователя. Первая вещь состояла бы в том, чтобы записать crontab в tmp файл и затем управлять тем временным файлом. Теперь, есть ли простой способ отредактировать ту строку с помощью SED или чего-то? Сырой путь wud для удаления той всей строки запишите новую строку со всем выражением и затем загрузите это в крон. Я не очень хорош с регулярными выражениями. Моя система поддерживает sed-i, так думал, что это могло быть сделано в однострочной команде.Заранее спасибо

1
задан 03.06.2010, 08:53

1 ответ

Основные шаги для редактирования crontab файла со сценарием пошли бы как это,

crontab -l > working-file.txt
script-to-edit.sh working-file.txt > edited-file.txt
crontab edited-file.txt

В зависимости от того, как другие строки в Вашем взгляде crontab (или может посмотреть в будущем),
можно записать a sed строка для изменения команды интереса.
Вот пример какой script-to-edit.sh мог бы сделать,

sed 's|foo.sh \-b 1 \-h 4|foo.sh -b XXX -h YYY|g'
2
ответ дан 12.12.2019, 13:15

Теги

Похожие вопросы