先上實力:
1.查看正在執行的crontab,用命令crontab -l ,這樣就可以看到哪些任務一直在執行了。
2.crontab -e 自動打開文件 編輯定時任務程序 在打開的頁面中點擊“i”鍵,進入插入模式,就可以編輯了。
3.輸入 定時格式+curl 空格 url 或者wget 空格+url 最后保存退出(wq)
* 10 * * * wget http://mobile*****.cn/Send**/september_two_point_five #9月標發券
*/1 * * * * curl http://116.62.226.228/luntan/Back/Cronttab/index 注意:可以編輯多個任務 換行編寫
4.編輯的格式,是“分 時 日 月 周 命令”。當分為*時,表示每分鍾執行一次,時為*時,表示每小時執行一次。
5.如果要設置沒隔多久執行,則寫為“*/數字”,在哪個位置就代表沒隔多久執行一次。
6.service crond restart
注意: 1. 如果是可以訪問的url前面要加curl 2.如果是某個腳本不需要加curl例如: */1 * * * * /usr/bin/python /root/task/test.py
linux內置的cron進程能幫我們實現這些需求,cron搭配shell腳本,非常復雜的指令也沒有問題。
cron介紹
我們經常使用的是crontab命令是cron table的簡寫,它是cron的配置文件,也可以叫它作業列表,我們可以在以下文件夾內找到相關配置文件。
- /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 -e進入當前用戶的工作表編輯,是常見的vim界面。每行是一條命令。
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:每月1、10、22日的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 : 00至23 : 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 restart