簡體   English   中英

Ubuntu cron沒有執行,但在命令行上工作正常

[英]Ubuntu cron not executing, but works fine on command line

我有一個應該每周運行一次的備份cron作業。 當我在命令行上執行它時它完全正常,但它永遠不會在cron中執行。 我的其他cron任務執行沒有問題。 我認為它必須與我的選項或不正確的語法有關。 這是有問題的cron條目:

10 10 * * 0 php ~/v2/symfony/symfony cc; tar -czf ~/backups/schroeder/v2/v2_site_backup_`date +%Y-%m-%d_%H-%M`.tgz ~/v2/symfony | tee -a ~/log/weekly_backup.log

解決方案當輸入我的cron列表時,我需要逃避%。 所以有效的命令是:

10 10 * * 0 php ~/v2/symfony/symfony cc; tar -czf ~/backups/schroeder/v2/v2_site_backup_`date +\%Y-\%m-\%d_\%H-\%M`.tgz ~/v2/symfony | tee -a ~/log/weekly_backup.log

crontab環境非常小,因此您必須指明完整路徑。

10 10 * * 0 /path/of/php /home/your_user/v2/symfony/symfony cc; tar -czf /home/your_user/backups/schroeder/v2/v2_site_backup_`date +%Y-%m-%d_%H-%M`.tgz /home/your_user/v2/symfony | tee -a /home/your_user/log/weekly_backup.log
           ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^                                 ^^^^^^^^^^^^^^^                                                                 ^^^^^^^^^^^^^^^                     ^^^^^^^^^^^^^^^

代替

10 10 * * 0 php ~/v2/symfony/symfony cc; tar -czf ~/backups/schroeder/v2/v2_site_backup_`date +%Y-%m-%d_%H-%M`.tgz ~/v2/symfony | tee -a ~/log/weekly_backup.log

也就是說,更改all ~ for /home/your_user/

也! 逃生每個%為已讀在這里

date +%Y-%m-%d_%H-%M

必須

date +\%Y-\%m-\%d_\%H-\%M

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM