Skip to content

Latest commit

 

History

History
45 lines (27 loc) · 2.59 KB

what-is-corn-expressions.md

File metadata and controls

45 lines (27 loc) · 2.59 KB

What is a Corn expression?

Corn(Cron Expression) 表达式是一种用于表示定时任务执行时间的表达式。在编写定时任务时,我们可以通过 Corn 表达式来指定任务的执行时间,从而实现定时执行的功能。Corn 表达式由6个字段组成,分别表示秒、分、时、日、月、周几。每个字段都有其对应的取值范围,例如秒字段的取值范围是0~59,分字段的取值范围是0~59

┌─────────────┬─────────────┬─────────────┬─────────────┬─────────────┬─────────────┬─────────────┐
│   秒 (0-59)    │   分钟 (0-59)  │   小时 (0-23)  │   日 (1-31)     │   月 (1-12)     │   星期 (0-7)   │   年 (可选)       │
│                   │                     │                       │                   │                    │   (0、7 都是周日) │
└─────────────┴─────────────┴─────────────┴─────────────┴─────────────┴─────────────┴─────────────┘

虽然Corn表达式的语法相对来说比较复杂,但是一旦掌握了规则,编写和使用就会变得更加容易。下面是一个简单的 Corn 表达式示例:

0 0 12 * * ?

这个表达式表示每天中午12点执行任务。其中,第一个0表示秒,第二个0表示分,第三个12表示小时,第四个*表示日(表示每天都执行),第五个*表示月,第六个?表示周几(因为已经在日字段指定了每天都执行,所以周几这个字段就不需要再指定了)。

除了上述示例中使用的*?之外,Corn 表达式还支持其他的取值符号。例如,我们可以使用/表示间隔,例如*/5表示每隔5个时间单位执行一次;还可以使用-表示范围,例如 10-20 表示从 10 到 20 这些时间单位都会被包含在内。

格式

{秒数} {分钟} {小时} {日期} {月份} {星期} {年份}

其中:

• 秒数(0~59)

• 分钟(0~59)

• 小时(0~23)

• 日期(1~31)

• 月份(1~12)

• 星期(0~6,0表示星期日)

• 年份(可选,1970~2099)

参考资料