linux crontab定時任務執行php檔案
下面簡單介紹一下什麼是crontab
crond是linux下用來週期性的執行某種任務或等待處理某些事件的一個守護程序,與windows下的計劃任務類似,當安裝完成作業系統後,預設會安裝此服務工具,並且會自動啟動crond程序,crond程序每分鐘會定期檢查是否有要執行的任務,如果有要執行的任務,則自動執行該任務
第一步:安裝crontab
檢測是否已安裝
# crontab
-bash: crontab: command not found (未安裝)
# yum install crontabs 或者 yum install vixie-cron (提示Complete!安裝成功)
服務操作說明:
/sbin/service crond start //啟動服務
/sbin/service crond stop //關閉服務
/sbin/service crond restart //重啟服務
/sbin/service crond reload //重新載入配置
檢視crontab服務狀態:
service crond status
手動啟動crontab服務:
service crond start
檢視crontab服務是否已設定為開機啟動,執行命令:
ntsysv
加入開機自動啟動:
chkconfig –level 35 crond on
第二步:
# crontab -e (編寫執行命令)
內容格式:
minute hour day month week command
其中:
minute: 表示分鐘,可以是從0到59之間的任何整數。
hour:表示小時,可以是從0到23之間的任何整數。
day:表示日期,可以是從1到31之間的任何整數。
month:表示月份,可以是從1到12之間的任何整數。
week:表示星期幾,可以是從0到7之間的任何整數,這裡的0或7代表星期日。
command:要執行的命令,可以是系統命令,也可以是自己編寫的指令碼檔案。
例子:
每兩小時執行一次 0 */2 * * *
每晚的21:30執行 30 21 * * *
自動執行php檔案格式如下
第一種: 執行時間 php路徑 PHP檔案路徑
比如: 0 */2 * * * /usr/local/php/bin/php /var/www/object/Application/test.php
第二種:直接執行瀏覽器訪問的路徑
比如:0 */2 * * * lynx -dump http://ip地址或者域名/Api/robot (使用該命令前 確定安裝lynx)
或者 0 */2 * * * /usr/bin/curl http://ip地址或者域名/Api/robot
第三步:測試是否能執行成功
直接執行命令列 如: /usr/bin/curl http://ip地址或者域名/Api/robot
不報錯就OK了 看下你要修改的資料是否修改
注:我開始把檔案放在後臺模組中 不報錯但也沒有執行 後臺才發現後臺登入自動跳轉了