1. 程式人生 > >linux crontab定時任務執行php檔案

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了 看下你要修改的資料是否修改

注:我開始把檔案放在後臺模組中 不報錯但也沒有執行 後臺才發現後臺登入自動跳轉了