計劃任務分2種:nginx
一、 例外性:按必定的週期循環來執行工做,例如每個月發薪水、天天一次的工做報告、天天須要的打卡等等;ide
二、 臨時性:指定時間執行的命令,此次作完下次沒必要作的,例如女友的生日、領導檢查工做等;spa
這些計劃任務的工做 Linux也均可以幫助咱們,例如:天天早6:00要叫我起牀(固然是經過音頻設備了);下班以前發送一份Email給本身,提醒別忘記發日報等等; rest
對於週期性的任務用cron命令;orm
對於臨時性的任務用 at 命令;blog
at命令:在指定的時間執行指定的命令,執行完以後就從系統中取消該命令;crontab
cron命令:在指定的時間週期性的執行指定的命令;get
安裝crontab:同步
yum install crontabsit
說明:
/etc/init.d/crond start 啓動服務
/etc/init.d/crond stop 關閉服務
/etc/init.d/crond restart 重啓服務
/etc/init.d/crond reload 從新載入配置
查看crontab服務狀態: /etc/init.d/crondd status
查看crontab服務是否已設置爲開機啓動,執行命令:ntsysv
加入開機自啓動: chkconfig –level 35 crond on
一、 crontab命令
功能說明: 設置計時器
語法:crontab [-u <用戶名稱>][配置文件] 或 crontab [-u <用戶名稱>][-elr]
補充說明: cron是一個常駐服務,它提供計時器的功能,讓用戶在特定的時間得以執行預設的指令或程序;只要用戶會編輯計時器的配置文件,就可使用計時器的功能;
其配置文件格式以下:
Minute Hour Day Month DayOFWeek Command
參數:
-e 編輯該用戶的計時器設置;
-l 列出該用戶的計時器設置;
-r 刪除該用戶的計時器設置;
-u<用戶名稱> 指定要設定計時器的用戶名稱;
二、 crontab格式
基本格式: * * * * * command
分 時 日 月 周 命令
第1列表示:分鐘1~~59 每分鐘用*或*/1表示
第2列表示:小時1~~23 (0 表示0點)
第3列表示:日期1~~31
第4列表示:月份1~~12
第5列表示:星期0~~6 (0 表示 星期天)
第6列表示:運行的命令
三、 案例
30 21 * * * /etc/init.d/nginx restart 每晚21:30 重啓nginx
45 4 1,10,22 * * /etc/init.d/nginx restart 每個月一、十、22日的4:45分 重啓nginx
10 1 * * 6,0/etc/init.d/nginx restart 每週六日的1:10 重啓nginx
0,30 18-23 * * * /etc/init.d/nginx restart 18點至23點之間每隔30分鐘重啓nginx
0 23 * * 6 /etc/init.d/nginx restart 每週六的23點重啓nginx
* */1 * * * /etc/init.d/nginx restart 每一小時重啓nginx
* 23-7/1 * * * /etc/init.d/nginx restart 晚上23點到早上7點之間,每小時重啓nginx
0 11 4 * mon-wed /etc/init.d/nginx restart 每個月4號的週一到週三 11點重啓nginx
0 4 1 jan * /etc/init.d/nginx restart 一月1號的4點重啓nginx
*/30 * * * * /usr/sbin/ntpdate 210.72.145.20 每30分鐘同步一次時間