Existe uma maneira de adicionar linhas ao cron de um usuário via script?
Geralmente faço isso usando crontab -e
, mas gostaria de automatizar essa tarefa com um script de shell.
scripts
cron
automation
Adam Matan
fonte
fonte
Respostas:
Você pode fazer eco da linha na parte inferior do crontab de usuários atuais assim:
fonte
cron
foi alterado.crontab
para esse usuário não existe ainda (?)Se você deseja editar um valor no seu crontab, pode fazer algo como:
Obviamente, você precisa ter cuidado com sua substituição para garantir que ela corresponda apenas à (s) linha (s) que deseja alterar; caso contrário, todos
foos
serão alterados parabars
(neste exemplo).A vantagem desse método é que você não está substituindo o crontab inteiro. (Uma pinça metafórica em vez de uma marreta.)
Você pode usar qualquer comando de edição em vez de sed . Por exemplo, se você deseja usar ed para retocar uma linha que começa assim:
Digamos que essa linha esteja entre muitas linhas ou você tenha muitos crontabs diferentes para atualizar em sistemas diferentes e você sabe apenas que sua linha será a única linha com o termo
flitch
nela.Pode parecer com:
Agora devo admitir que quase 100% do tempo sed irá fazer o que ed vai fazer, mas é sempre bom ter uma ferramenta extra sobre o canivete suíço. ^. ^
fonte