经典 Cron 表达式包含 5 个位置,中间用空格分隔。其标准语法如下:
[minute] [hour] [day of month] [month] [day of week]
其中:
-
[minute]
表示分钟,取值范围[0, 59]
-
[hour]
表示小时,取值范围[0, 23]
-
[day of month]
表示日期,取值范围[0, 31]
-
[month]
表示月份,取值范围[1, 12]
,也可以用名称简写(Jan
-Dec
) -
[day of week]
表示星期,取值范围[0, 6]
,也可以用名称简写(Sun
-Sat
)
每个位置均可以使用如下模式:
-
,
:表示值的列表,例如1,3
表示当该位置为 1 和 3 时各执行一次 -
-
:表示值的范围,例如1-3
表示当该位置为 1、2 和 3 时各执行一次 -
/
:表示值的步进,例如*/2
表示该位置每 2 个单位执行一次,又如1-9/2
表示该位置为 1、3、5、7 和 9 时各执行一次;步进默认为 1 -
*
:表示该位置为任意值时都会执行,等价于*/1
经典样例:
-
* * * * *
:每分钟执行一次 -
0 * * * *
:每小时的整点执行一次 -
0 0 * * *
:每天 0 点执行一次 -
0 0 1 * *
:每月 1 号 0 点执行一次 -
0 0 1 1 *
:每年 1 月 1 日 0 点执行一次 -
0 0 * * 0
:每星期日的 0 点执行一次
其他样例:
-
*/3 * * * *
:每 3 分钟执行一次 -
0 8 * * 1-5
:每个工作日的早上 8 点执行一次 -
0 8 * * 1,5
:每周一和周五的早上 8 点各执行一次 -
0 9-15 * * *
:每天 9 点 - 15 点每个整点执行一次 -
0 0 1 */3 *
:每个季度的第 1 天执行一次
在部分场景(例如 Node.js)中,对 Cron 表达式进行了拓展,采用 6 位的 Cron 表达式,其标准语法如下:
[second] [minute] [hour] [day of month] [month] [day of week]
相较于经典语法,第一位表示 “秒” 而不是 “分钟”,月份的取值范围为 [0, 11]
而不是 [1, 12]
。文章来源:https://www.toymoban.com/news/detail-735821.html
6 位的拓展 Cron 表达式的在线分析工具:https://cron.qqe2.com/文章来源地址https://www.toymoban.com/news/detail-735821.html
到了这里,关于Linux|CronTab 的 Cron 表达式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!