2010-05-03 136 views
0
* * * * * php /home/admin/public_html/domain.com/public/cron/route.php &>> /home/admin/public_html/domain.com/log/cron.log 

我有那個cron每分鐘運行一次。在一個日誌文件中存儲crontab php輸出

我想存儲在cron.log

發生在route.php錯誤這奇妙的作品,當我運行:

php /home/admin/public_html/domain.com/public/cron/route.php &>> /home/admin/public_html/domain.com/log/cron.log 

通過命令行手動。但是,當crontab運行它沒有錯誤存儲在cron.log

cron.log由admin:admin擁有,權限設置爲777只是爲了確保。

有人嗎?

+1

是屬於stackoverflow.com。我可以想到兩個問題:首先,您沒有以管理員身份運行cron作業,其次,該腳本沒有返回任何錯誤。 – WhirlWind 2010-05-03 01:50:23

+1

屬於stackoverlow.com?你什麼意思? – vick 2010-05-03 02:05:02

回答

0

事情是這樣的:

* * * * * /usr/bin/php /home/admin/public_html/domain.com/public/cron/route.php >> /home/admin/public_html/domain.com/log/cron.log 2>&1 

當標準錯誤重定向到相同的目的地爲標準輸出(帶2>&1),這將收集的所有錯誤的腳本之外,並將它們添加到cron.log文件。

+0

OP使用'&>>'來推測重定向標準和錯誤輸出(http://www.tldp.org/LDP/abs/html/io-redirection.html)雖然這是一個問題,他的shell是怎麼設置的'cron'它可能是一些不支持這種格式的shell。 (我相信它現在在bash中也被棄用了) – fejese 2014-10-22 14:36:51

0

這可以用cron或php -q或-f命令中的>符號簡單地調用。

在你的情況

php -q /home/admin/public_html/domain.com/public/cron/route.php > /home/admin/log.txt 2> /dev/null 

塊引用PHP -q /home/admin/public_html/domain.com/public/cron/route.php> /home/admin/log.txt 2>/dev/null