idealcitier's Daily life
阿新 • • 發佈:2018-12-14
每天週期性的操作,如果每天手動的操作將是一個十分繁瑣的事情,使用linux下面的crontab工具可以有效的解決該問題。
使用的環境是ubuntu 16.06LTS
檢查crontab是否安裝:crontab -l
檢視crontab是否在啟動:service cron statue
編輯crontab任務:
crontab -e
crontab的配置檔案格式:
* * * * * command
第一個* ----> 分鐘0~59 第二個* ----> 小時0~23 第三個* ----> 日期1~31 第四個* ----> 月份1~12 第五個* ----> 星期0~7(0/7都是表示星期日)
e.g
# 每分鐘列印date資訊
*/1 * * * * date >> /home/liguo/date.txt
然後儲存,檢視date.txt
檔案,可以看到以及開始執行了,沒有結果等一下.
#每晚的21:30重啟Apache
30 21 * * * service httpd restart
# 每月1,10,22日的4:45重啟Apache
45 4 1,10,22 * * service httpd restart
# 每月1~10日的4點45重啟Apache
45 4 1-10 * * service httpd restart
# 每隔兩分鐘重啟Apache */2 * * * * service httpd restart 1-59/2 * * * * service httpd restart
# 晚上11點到早上7點之間,每隔一個小時重啟Apache
0 23-7/1 * * * service httpd restart
# 每天18點到23點之間每隔30分鐘重啟Apache
0,30 18-23 * * * service httpd restart
0-59/30 18-23 * * * service httpd restart
通過上面的例子,進行下面的總結:
*
表示任何的時候都可以進行匹配- 可以使用
A,B,C
表示A或B或C時執行命令 - 可以使用
A-B
表示A到B時間內執行命令 - 可以使用
*/A
表示每A分鐘/小時執行一次該命令