0%

crontab命令

一、常用用法

列出当前用户的定时任务配置列表:

1
crontab -l

编辑当前用户的定时任务配置列表:

1
crontab -e

备注:
不同用户有不同的定时任务配置列表。

二、定时任务配置语法

2.1、注释语句

注释语句形式如:

1
(前导内容,可以是空格符,TAB符;或者无前导内容)#注释语句正文内容\n

2.2、定时任务配置语句

定时任务配置语句形式如:

1
(前导内容,可以是空格符,TAB符;或者无前导内容)定时时间配置(“定时时间配置”和“具体执行命令”之间以空格符或者TAB符隔开)具体执行命令\n

2.2.1、定时时间配置

形如:

1
分钟 小时 月语境中的日 月 星期语境中的日(字段间以空格符或者TAB符隔开)

以上5个字段的可取值范围描述见表1。

表1

字段名称 可取值范围
分钟 0-59
小时 0-23
月语境中的日 1-31
1-12
星期语境中的日 0-7(0和7都表示星期日)

以上5个字段的值设置形式有4种:单值(比如“0”,“5”,“31”),范围(比如“0-59”,“1-31”,“0-6”),列表(比如“1,2,5”,“0-4,8-12”),通配符“*”(等价于相应字段可取值范围全集,比如对应于“分钟”字段,等价于“0-59”)。
另外可以在“范围”和“通配符”这两种值设置形式中设定“取值间隔”,比如“0-59/2”,“*/2”。
以上5个字段中有两个“日”,那么当前时间匹配这两个“日”中的哪一个时,配置的定时任务能够得到执行?针对这个问题,有以下规则:

1
2
如果存在一个“日”的值设置形式为“通配符”,那么这两个“日”的关系是“与”关系,即当前时间只有同时匹配这两个“日”时,配置的定时任务才会得到执行;
否则,这两个“日”的关系是“或”关系,即当前时间只要匹配这两个“日”中任意一个时,配置的定时任务便会得到执行

2.2.2、具体执行命令

配置“具体执行命令”。


参考文献: [1]man 1 crontab [2]man 5 crontab
您的支持将鼓励我继续分享!