Linux crontab 的格式及定义

crontab的基本格式:

f1 f2 f3 f4 f5 command
分 时 日 月 周 命令

第一列 f1 代表分钟:0~59 分钟:
1.当 f1 为 * 时,表示每分钟都要执行
2.为 */n 时,表示每n分钟执行一次
3.为 a~b 时,表示从a分钟到b分钟这段时间要执行
4.为a,b,c...表示a,b,c分钟要执行

第二列 f2 代表小时:0~23小时(0表示凌晨)
1.当 f2 为 *时,表示每小时都要执行
2.为 */n 时,表示每n小时执行一次
3.为 a~b 时,表示从a小时到b小时这段时间要执行
4.为a,b,c 时,表示第a,b,c 小时要执行

第三列 f3 代表日 1~31 日:含义如上,以此类推

第四列 f4 代表月 1~12 月:含义如上,以此类推

第五列 f5 代表星期 0~6 (0表示星期天):含义如上,以此类推

第六列 command 代表要运行的命令

特殊符号:
星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。

逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”。

中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”。

正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

举例如下:
30 21 * * * /usr/local/apache/bin/apachectl restart
表示:每天晚上21:30分钟,重启apache

45 4 1,10,22 * * /usr/local/apache/bin/apachectl restart
表示:每月1号,10号,22号的凌晨4:45重启apache

10 1 * * 6,0 /usr/local/apache/bin/apachectl restart
表示:每周六,日的凌晨1:10分重启apache

0,30 18-23 * * * /usr/local/apache/bin/apachectl restart
表示:每天18:00至23:00时,每隔30分钟重启apache

0 23 * * 6 /usr/local/apache/bin/apachectl restart
表示:每周六的23:00重启apache

* */1 * * * /usr/local/apache/bin/apachectl restart
表示:每小时重启apache

* 23-7/1 * * * /usr/local/apache/bin/apachectl restart
表示:23:00至07:00这个时间段,每小时重启apache

0 11 4 * mon-wed /usr/local/apache/bin/apachectl restart
表示:每月4号的周一到周三的23:00重启apache

0 4 1 jan * /usr/local/apache/bin/apachectl restart
表示:一月一号凌晨4点重启apache

原文地址:https://www.cnblogs.com/hankyoon/p/12618298.html