首頁 >後端開發 >php教程 >Linux Crontab指令

Linux Crontab指令

WBOY
WBOY原創
2016-08-08 09:20:271106瀏覽

安裝crontab:

yum install crontabs

基礎的cron服務控制指令:

程式碼  

  1.    //啟動服務  
  2.   
  3. /sbin/service crond stop //關閉服務  
  4.    
  5. /cr啟服務  
  6.   
  7. / sbin/service crond reload 
  8. //重新載入設定  
查看crontab服務狀態:service crond status

查看crontab服務狀態:service crond status

執行指令:ntsysv

加入開機自動啟動: chkconfig --level 35 crond on  


如果想進一步了解chkconfig --level指令,http://www.cnblogs.com/panjun-Donet/archive/2010/archive/2010/08 /10/1796873.html 講解的更詳細


   

   

   ][-elr]  
  1.    
  2.    
  3. 補充說明:cron是一個常駐服務,它提供計時器的功能,讓使用者在特定的時間點可預設的指令。只要使用者會編輯計時器的設定文件,就可以讓 用計時器的功能。其檔案格式如下:  
  4.    
  5. Minute Hour Day Month DayOFWeek 
  6.    
  7. 參數:  
  8.    
  9.    
  10. -e 使用者的計時器設定。  
  11.    
  12. -l  列出使用者的計時器設定。  
  13.    
  14. -r  刪除使用者的計時器設定。  
  15.    
  16. -u  指定設定計時器的使用者名稱。  
  17. crontab 格式
  18. 程式碼 
  19.  
    1. 基本格式:  
    2.    
    3. * * 
    4. 分時日月週 指令  
    5.    
    6.    
    7. 第1列表示分鐘1~59 每分鐘使用*或*/1表示  
    8.    
    9. 第2列表示小時1~23(0點表示0點) 第3列表示日期1~31  
    10.    
    11. 第4列 表示月份1~12  
    12.    
    13. 第6列要執行的指令  
    14.    
    15.     to prefix a comment  
    16.    
    17. # +-—— - minute (0 – 59)  
    18.    
    19. # | +-- h
    20. # | | +———- day of month (1 – 31)  
    21.    
    22. # | | | +——- month (1 – 12) | | +——- month (1 – 12)  | | | | +—- day of week (0 – 7) ( Sunday=0 or
    23.  7)  
    24.    
    25. # | # * * * * * command to be executed  
    26. crontab檔案的一些例子:
    27. 程式碼
    28.   
      1. 30 21 * * * /etc/init.d/nginx restart 21
      2. :
      3. 30
      4. 重啟nginx。
      5.       
      6.    1
      7. ,10
      8. ,22
      9.  * * /etc/init. d/nginx restart     每月110  : 45重啟nginx。
      10.    
      11.       * * 6,0 /etc/init.d/nginx restart      每週六、日的
      12. 1
      13.  : 
      14. 10
      15. 重啟nginx。
      16.    
      17.       18-23 * * * /etc/init.d/nginx restart
      18.    
      19. 每天
      20. 18 : 00:0,18 :  之間每隔
      21. 30分鐘重啟nginx。
      22.    
      23.    
      24.    * * 6 /etc/init.d/nginx restart        
      25.    
      26.              每星期六的11
      27.  : 
      28. 00
      29.  pm重啟nginx。
      30.    
      31.        .d/nginx restart     
      32. 每一小時重啟nginx
      33.    
      34.       
      35. 1 * * * /etc/init.d/nginx restart  
      36. 晚上
      37. 11點到早上7點之間,每 隔一小時重啟nginx  
      38.    
      39. 0
      40.  
      41. 11
      42.  
      43. 4
      44.  * mon-wed /etc/init.d/nginx restart  
      45. 的每月到週三 的11點重啟nginx        
      46.  
      47. 1 jan * /etc/init.d/nginx restart     
      48. 一月一號的
      49. 4
      50. 點重啟nginx  
      51.    
      52. */30 * * * * /usr/sbin/ntpdate  210.72.145.20  
      53.    
      54. 應用到thinkphp

        首先你得把要定時執行的功能代碼寫到Action中。或是可以用URL存取之後可以執行也行。

        例如我把定時每天遍歷訂單是否有成交額的更新代碼放在 Order/update_status 下。

        而我的專案存取位址是www.jieqinwang.com 即:這個功能的程式碼執行路徑為:http://www.jieqinwang.com/Order/update_status

        liunx去配置cron了。

        crontab -e 進入任務清單。

        按下I鍵進入編輯模式,然後新增一條任務。

        例如我想每天中午12點執行一次我剛剛寫的那段程式碼

        就新增新的一行 0 12 * * * * curl http://www.jieqinwang.com/Order/update_status

        然後按Esc鍵退出編輯模式,再輸入:wq回車。保存退出。

        這樣我們就加入了一個定時任務。可以利用crontab -l來查看任務清單是否已經包含。

        最後一步,因為這樣添加進行有可能不會立即生效。我們重啟一下cron服務就可以了。

        重啟服務指令:/sbin/service crond restart


        以上就介紹了Linux Crontab指令,包含了方面的內容,希望對PHP教學有興趣的朋友有幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn