今天遇到乙個問題執行crontab 執行失敗 ,但是直接請求能成功
問了一些大牛為什麼會執行失敗的原因我總結了一下 不知道具體為什麼
1.crontab是寫到root使用者的,所以crond服務在執行上會讀取 root的$path變數
2.雖然crond裡面寫了絕對路徑 但是 php執行檔案裡可能再次呼叫了php相關環境引數或者命令,這時間 它只會查詢 系統的可執行目錄,並不能繼承你寫的絕對路徑
檢視cron的日誌發現 執行的命令也在程序中 tail -f /var/log/cron
直接執行
/usr/local/webserver/php/bin/php /data/web/***xx/protected/yiic_qa.php xx index
也是可以成功
然後修改了crontab -e 裡面php的執行路徑就成功了
執行失敗的寫法
0 0 * * * /usr/local/webserver/php/bin/php /data/web/***xx/protected/yiic_qa.php xx index
執行成功的寫法
0 0 * * * /bin/php /data/web/***xx/protected/yiic_qa.php xx index
linux 定時執行 crontab
crontab e 進入乙個vi 編輯介面 在最後一行加上 30 netstat tmp net.log 表示每隔30分就執行netstat命令,並把執行結果存入net.log中。crontab是乙個很方便的在unix linux系統上定時 迴圈 執行某個任務的程式 使用cron服務,用 servi...
Linux下crontab,指令碼自動執行
為了進行指令碼的自動執行,看了下crontab的用法。任務排程的crond常駐命令 crond 是linux用來定期執行程式的命令。當安裝完成作業系統之後,預設便會啟動此任務排程命令。crond命令每分鐘會定期檢查是否有要執行的工作,如果有要執行的工作便會自動執行該工作。而linux任務排程的工作主...
linux 執行計畫任務crontab
1 進入命令列,敲擊crontab e進入定時任務的編輯模式。2 輸入命令列。eg 0 5 home weblogic oracle middleware user projects domains base domain bin stopweblogic.sh 0 6 home weblogic ...