Jaki jest właściwy sposób dla skryptu bash dodać zadanie w crontab, aby
- nie będzie żadnych powtarzających się zadań
- plik crontab nie zostanie przywrócony
- (opcjonalnie) zbliżony do tego, aby być однострочным
Natknąłem się na to rozwiązanie poniżej, ale to nie wpływa na wynik crontab -l
.
grep 'some_user python /mount/share/script.py' /etc/crontab || echo '*/1 * * * * some_user python /mount/share/script.py' >> /etc/crontab
Próbowałem przekonwertować go, aby mieć wpływ crontab -l
,
(crontab -l | grep '/mount/share/script.py') || { crontab -l; '*/1 * * * * some_user python /mount/share/script.py >> /root/foo/logs/foo.cron.log 2>&1'; } | crontab -
ale wykonanie tego polecenia powoduje błąd:
-bash: */1 * * * * some_user python /mount/share/script.py >> /root/foo/logs/foo.cron.log 2>&1: No such file or directory