Administrator
发布于 2023-09-19 / 34 阅读
0
0

Cron 表达式

{Seconds} {Minutes} {Hours} {DayofMonth} {Month} {DayofWeek} Year

{Seconds} {Minutes} {Hours} {DayofMonth} {Month} {DayofWeek}


每个域都可以用数字表示,但是还可以出现如下特殊字符。


* : 表示匹配该域的任意值。比如Minutes域使用*,就表示每分钟都会触发。
- : 表示范围。比如Minutes域使用 10-20,就表示从10分钟到20分钟每分钟都会触发一次。
, : 表示列出枚举值。比如Minutes域使用1,3,就表示1分钟和3分钟都会触发一次。
/ : 表示间隔时间触发(开始时间/时间间隔)。例如在Minutes域使用 5/10,就表示从第5分钟开始,每隔10分钟触发一次。
? : 表示不指定值。简单理解就是忽略该字段的值,直接根据另一个字段的值触发执行


这里,有一个需要注意的点:
如果想表示成每隔1小时,执行一次,那么cron表达式正确值为:0 0 0/1 * * ?,如果将0改成了*,就会每隔一秒执行一次,就错了。比如,下面就提供了一个错误的表达式:

# 错误的表达式

* * 0/1 * * ?

评论