Linux定时器crontab用法
初識(shí)定時(shí)器
在Linux終端通過crontab -e命令,向文件中寫入*/1 * * * * /home/ysl/tmp/SendMail.py(crontab表達(dá)式),即添加了一項(xiàng)每1分鐘執(zhí)行1次的定時(shí)任務(wù)。
crontab
表達(dá)式格式
{minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script}
minute: 區(qū)間為 0 – 59
hour: 區(qū)間為0 – 23
day-of-month: 區(qū)間為0 – 31
month: 區(qū)間為1 – 12. 1 是1月. 12是12月
Day-of-week: 區(qū)間為0 – 7. 周日可以是0或7
full-path-to-shell-script:shell腳本(要求絕對(duì)路徑,且目錄存在)
* 代表所有可能的值
/{num} 代表間隔周期
1,2,3 代表多選
1-3 代表范圍
選項(xiàng)
crontab [ -u user ] -e:修改crontab文件。如果文件不存在會(huì)自動(dòng)創(chuàng)建
crontab [ -u user ] -l:顯示crontab文件內(nèi)容
crontab [ -u user ] -r 刪除crontab文件
crontab [ -u user ] -ir:刪除crontab文件前提醒用戶
crontab file:用$HOME目錄下的文件替代目前的crontab。可用于恢復(fù)crontab文件
日志文件
位置:/var/log/cron.log
只會(huì)記錄是否執(zhí)行了某些計(jì)劃的腳本,但是具體執(zhí)行是否正確以及腳本執(zhí)行過程中的一些信息并不會(huì)記錄在日志文件中
進(jìn)程
/etc/init.d/crond start/restart/stop
ps -ef | grep crond
案例
0 11 4 * 1-3 command line
每個(gè)月的4號(hào)與每個(gè)禮拜的禮拜一到禮拜三的早上11點(diǎn)
*/30 [3-5],[17-20] * * * /bin/sh /home/omc/h.sh >/dev/null 2>&1 >> /var/spool/cron/root
每天3-5,17-20每隔30分鐘執(zhí)行一次腳本
0 14 * * 5 date_time=`date +’\%Y-\%m-\%d \%H:\%M:\%S’` && /home/ysl/tmp/SendMail.py >> “/home/ysl/tmp/SendMail-$date_time.log” 2>&1 &
每周五14點(diǎn)執(zhí)行/home/ysl/tmp/SendMail.py,并將日志輸出到/home/ysl/tmp/SendMail-{運(yùn)行時(shí)間}.log文件中。
!!注意:crontab文件中無法理解%的含義,因而需要將%轉(zhuǎn)義。
crontab注意事項(xiàng)
定時(shí)任務(wù)分類
Linux下的任務(wù)調(diào)度分為兩類,系統(tǒng)任務(wù)調(diào)度和用戶任務(wù)調(diào)度。
系統(tǒng)任務(wù)調(diào)度
系統(tǒng)周期性所要執(zhí)行的工作,比如寫緩存數(shù)據(jù)到硬盤、日志清理等。
/etc/crontab文件,這個(gè)就是系統(tǒng)任務(wù)調(diào)度的配置文件。
用戶任務(wù)調(diào)度
用戶定期要執(zhí)行的工作,比如用戶數(shù)據(jù)備份、定時(shí)郵件提醒等。
用戶可以使用 crontab -e來定制自己的計(jì)劃任務(wù)。
用戶crontab文件都被保存在/var/spool/cron/目錄中。其文件名與用戶名一致
周邊
通過at命令來控制在指定的時(shí)間運(yùn)行任務(wù)
at -f test-cron.sh -v 10:25
其中-f 指定腳本文件, -v 指定運(yùn)行時(shí)間
參考
https://www.cnblogs.com/aminxu/p/5993769.html
https://blog.csdn.net/weixin_41712499/article/details/99437222
https://www.cnblogs.com/ftl1012/p/crontab.html
總結(jié)
以上是生活随笔為你收集整理的Linux定时器crontab用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分治策略Divide and Conqu
- 下一篇: linux 其他常用命令