要使用crontab定時(shí)器工具酪捡,必須要啟動(dòng)cron服務(wù):
service cron start
crontab的語(yǔ)法,以備日后救急纳账。先上張超給力的圖:
crontab各參數(shù)說(shuō)明:
-e : 執(zhí)行文字編輯器來(lái)編輯crontab逛薇,內(nèi)定的文字編輯器是VI
-r : 刪除目前的crontab
-l : 列出目前的crontab(查看專用)
-i : 會(huì)和-r 配合使用,在刪除當(dāng)前的crontab時(shí)詢問疏虫,輸入y 則刪除
注意crontab是分用戶的永罚,以誰(shuí)登錄就會(huì)編輯到誰(shuí)的crontab
crontab特殊的符號(hào)說(shuō)明:
""代表所有的取值范圍內(nèi)的數(shù)字。特別要注意哦卧秘!
"/"代表每的意思呢袱,如"/5"表示每5個(gè)單位
"-"代表從某個(gè)數(shù)字到某個(gè)數(shù)字
","分散的數(shù)字
**crontab文件的使用示例:
**30 21 * * * 表示每晚的21:30
45 4 1,10,22 * * 表示每月1、10翅敌、22日的4 : 45
10 1 * * 6,0 表示每周六羞福、周日的1 : 10
0,30 18-23 * * * 表示在每天18 : 00至23 : 00之間每隔30分鐘
0 23 * * 6 表示每星期六的11 : 00 pm
- */1 * * * 每一小時(shí)
- 23-7/1 * * * 晚上11點(diǎn)到早上7點(diǎn)之間,每隔一小時(shí)
- 8,13 * * 1-5 從周一到周五的上午8點(diǎn)和下午1點(diǎn)
0 11 4 * mon-wed 每月的4號(hào)與每周一到周三的11點(diǎn)
0 4 1 jan * 一月一號(hào)的4點(diǎn)
-------------------------------- 如何啟動(dòng)crontab的日志服務(wù) --------------------------------------------------------
發(fā)現(xiàn)UBuntu下居然沒有自動(dòng)打開cron的日志服務(wù)功能蚯涮,解決方法如下
cron的日志功能使用syslogd服務(wù)治专,不同版本Linux可能裝了不同的軟件,這里介紹常見的兩種:
sysklogd>>>>>>
- 編輯 /etc/syslog.conf遭顶,并且打開以cron.*開始的那行注釋张峰。 2. 運(yùn)行 /etc/init.d/sysklogd restart 。 3. 運(yùn)行 /etc/init.d/cron restart 棒旗。
rsyslog>>>>>> - 修改rsyslog文件挟炬,將/etc/rsyslog.d/50-default.conf 文件中的#cron.*前的#刪掉;2. 重啟rsyslog服務(wù)service rsyslog restart3. 重啟cron服務(wù)service cron restart
-------------------------------- 如何查看crontab的日志記錄 --------------------------------------------------------
昨天crontab中的同步任務(wù)沒有執(zhí)行嗦哆,不知道是什么原因沒有執(zhí)行,貌似任務(wù)hang住了婿滓,想查詢一下crontab到底問題出在哪里老速,或者h(yuǎn)ang在了什么地方。1. linux看 /var/log/cron這個(gè)文件就可以凸主,可以用tail -f /var/log/cron觀察2. unix在 /var/spool/cron/tmp文件中橘券,有croutXXX001864的tmp文件,tail 這些文件就可以看到正在執(zhí)行的任務(wù)了卿吐。3. mail任務(wù)在 /var/spool/mail/root 文件中旁舰,有crontab執(zhí)行日志的記錄,用tail -f /var/spool/mail/root 即可查看最近的crontab執(zhí)行情況嗡官。