在平常的工作中,經常會遇到一些例行任務,需要每天定時運行。解決這類問題就可以使用crontab命令,下面一起來看一下~
首先需要啟動crontab服務
service crond start #啟動服務
service crond stop #關閉服務
service crond restart #重啟服務
service crond reload #重新載入配置
service crond stop #關閉服務
service crond restart #重啟服務
service crond reload #重新載入配置
然后使用crontab -e進行編輯,然后進行例行任務的編輯,之后保存退出即可。
具體的格式說明如下:
每一行的格式為:分 時 日 月 周 命令
第1列表示分鍾1~59 每分鍾用*或者 */1表示
第2列表示小時1~23(0表示0點)
第3列表示日期1~31
第4列表示月份1~12
第5列標識號星期0~6(0表示星期天)
第6列要運行的命令
第2列表示小時1~23(0表示0點)
第3列表示日期1~31
第4列表示月份1~12
第5列標識號星期0~6(0表示星期天)
第6列要運行的命令
值得注意的是,在crontab中,無論是命令還是文件的路徑都要寫全,否則不認。
比如要每天6點執行一個/home/run/test.sh的腳本,可以配置如下:
0 6 * * * /sbin/sh /home/run/test.sh
或者
0 6 * * * cd /home/run && /bin/sh test.sh
這里需要注意的是,test.sh腳本中的命令也需要使用全路徑,否則crontab找不到的。
如果還想有一些其他的需求,比如保留輸出可以將輸出重定向,與正常的腳本運行沒有區別
0 6 * * * cd /home/run && /bin/sh test.sh > log
