Bir bash betiğinin crontab'a bir iş eklemesinin doğru yolu nedir, öyle ki
- yinelenen iş olmayacak
- crontab dosyasına başvurulmayacak
- (isteğe bağlı) tek astarlı olmaya yakın
Aşağıda bu çözüme rastladım, ancak çalışma çıktısını etkilemiyor crontab -l
.
grep 'some_user python /mount/share/script.py' /etc/crontab || echo '*/1 * * * * some_user python /mount/share/script.py' >> /etc/crontab
Etkilemek için dönüştürmeyi denedim 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 -
ancak bu komutu çalıştırmak hata verir:
-bash: */1 * * * * some_user python /mount/share/script.py >> /root/foo/logs/foo.cron.log 2>&1: No such file or directory