安裝crontab:
yum install crontabs
基礎的cron服務控制指令:
程式碼
碼- //啟動服務
-
- /sbin/service crond stop //關閉服務
-
- /cr啟服務
/ sbin/service crond reload - //重新載入設定
查看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]
-
補充說明:cron是一個常駐服務,它提供計時器的功能,讓使用者在特定的時間點可預設的指令。只要使用者會編輯計時器的設定文件,就可以讓 用計時器的功能。其檔案格式如下: Minute Hour Day Month DayOFWeek 參數:
-
- -e 使用者的計時器設定。
-
- -l 列出使用者的計時器設定。
-
- -r 刪除使用者的計時器設定。
-
- -u 指定設定計時器的使用者名稱。
- crontab 格式
-
程式碼
-
- 基本格式:
-
- * *
- 分時日月週 指令
-
-
- 第1列表示分鐘1~59 每分鐘使用*或*/1表示
-
- 第2列表示小時1~23(0點表示0點) 第3列表示日期1~31
-
-
第4列 表示月份1~12
- 號
-
- 第6列要執行的指令
-
-
to prefix a comment
-
-
# +-—— - minute (0 – 59)
-
-
# | +-- h
- # | | +———- day of month (1 – 31)
-
- # | | | +——- month (1 – 12) | | +——- month (1 – 12) | | | | +—- day of week (0 – 7) ( Sunday=0 or
7)
-
- # | # * * * * * command to be executed
crontab檔案的一些例子: 程式碼-
- 30 21 * * * /etc/init.d/nginx restart 21
:- 30
重啟nginx。 -
- 1
- ,10
- ,22
- * * /etc/init. d/nginx restart 每月1、10 : 45重啟nginx。
-
-
* * 6,0 /etc/init.d/nginx restart 每週六、日的
1- :
10- 重啟nginx。
-
- 18-23 * * * /etc/init.d/nginx restart
每天- 18 : 00:0,18 : 之間每隔
- 30分鐘重啟nginx。
- * * 6 /etc/init.d/nginx restart
-
- 每星期六的11
: - 00
pm重啟nginx。
-
- .d/nginx restart
每一小時重啟nginx -
- 1 * * * /etc/init.d/nginx restart
晚上- 11點到早上7點之間,每 隔一小時重啟nginx
-
0-
11-
4- * mon-wed /etc/init.d/nginx restart
-
的每月到週三 的11點重啟nginx
-
- 1 jan * /etc/init.d/nginx restart
-
一月一號的
4- 點重啟nginx
-
- */30 * * * * /usr/sbin/ntpdate 210.72.145.20
-
-
應用到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教學有興趣的朋友有幫助。