1. 程式人生 > 其它 >Linux——Crontab 定時任務

Linux——Crontab 定時任務

技術標籤:# Linux

/var/spool/cron/ 目錄下存放的是每個使用者包括root的crontab任務,每個任務以建立者的名字命名
/etc/crontab 這個檔案負責排程各種管理和維護任務。
/etc/cron.d/ 這個目錄用來存放任何要執行的crontab檔案或指令碼。
我們還可以把指令碼放在/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly目錄中,讓它每小時//星期、月執行一次。

crontab的命令

crontab [-u username]    //省略使用者表表示操作當前使用者的crontab
    -e      (
編輯工作表) -l (列出工作表裡的命令) -r (刪除工作作)

crontab的命令構成為 :時間+動作,
其時間有分、時、日、月、周五種,
操作符有:

* 取值範圍內的所有數字
/ 每過多少個數字
- 從X到Z
,雜湊數字

例子:

例項1:每1分鐘執行一次myCommand
* * * * * myCommand
* 
例項2:每小時的第3和第15分鐘執行
3,15 * * * * myCommand

例項3:在上午8點到11點的第3和第15分鐘執行
3,15 8-11 * * * myCommand

例項4:每隔兩天的上午8點到11點的第3和第15
分鐘執行 3,15 8-11 */2 * * myCommand 例項5:每週一上午8點到11點的第3和第15分鐘執行 3,15 8-11 * * 1 myCommand 例項6:每晚的21:30重啟smb 30 21 * * * /etc/init.d/smb restart 例項7:每月11022日的4 : 45重啟smb 45 4 1,10,22 * * /etc/init.d/smb restart 例項8:每週六、週日的1 : 10重啟smb 10 1 * * 6,0 /etc/init.d/smb restart 例項9:每天18 : 0023 : 00之間每隔30分鐘重啟smb 0,30 18-23 * *
* /etc/init.d/smb restart 例項10:每星期六的晚上11 : 00 pm重啟smb 0 23 * * 6 /etc/init.d/smb restart 例項11:每一小時重啟smb * */1 * * * /etc/init.d/smb restart * 例項12:晚上11點到早上7點之間,每隔一小時重啟smb * 23-7/1 * * * /etc/init.d/smb restar