函数定时触发器Cron表达式规则
更新时间 2025-01-13 16:37:13
最近更新时间: 2025-01-13 16:37:13
本章介绍函数工作流定时触发器Cron表达式的规则。
函数Cron表达式下支持如下几种配置方式。
- @every格式
@every NUnit,其中N表示一个正整数,Unit可以为ns, µs, ms, s, m, h,表示每隔N个Unit时间触发一次函数如下表所示。
表达式示例
| 表达式 | 含义 |
|---|---|
| @every 30m | 每隔30分钟触发一次函数 |
| @every 1.5h | 每隔1.5小时触发一次函数 |
| @every 2h30m | 每隔2小时30分钟触发一次函数 |
- 标准cron表达式
cron表达式格式要求“秒 分 时 日 月 周(可选)”,每个字段间以空格隔开,其中各字段说明如下表所示。
cron表达式字段说明
| 字段 | 说明 | 取值范围 | 允许的特殊字符 |
|---|---|---|---|
| 秒 | 必选 | 0-59 | , - * / |
| 分钟 | 必选 | 0-59 | , - * / |
| 时 | 必选 | 0-23 | , - * / |
| 日(Day of month) | 必选 | 1-31 | , - * ? / |
| 月 | 必选 | 1-12或者Jan-Dec(英文不区分大小写)如表3-29所示。 | , - * / |
| 星期几(Day of week) | 可选 | 0-6或者Sun-Sat(0表示星期天,英文不区分大小写),如表3-30所示。 | , - * ? / |
月份字段取值说明
| 月份 | 数字 | 英文简写 |
|---|---|---|
| 1月 | 1 | Jan |
| 2月 | 2 | Feb |
| 3月 | 3 | Mar |
| 4月 | 4 | Apr |
| 5月 | 5 | May |
| 6月 | 6 | Jun |
| 7月 | 7 | Jul |
| 8月 | 8 | Aug |
| 9月 | 9 | Sep |
| 10月 | 10 | Oct |
| 11月 | 11 | Nov |
| 12月 | 12 | Dec |
星期字段取值说明
| 星期 | 数字 | 英文简写 |
|---|---|---|
| 星期一 | 1 | Mon |
| 星期二 | 2 | Tue |
| 星期三 | 3 | Wed |
| 星期四 | 4 | Thu |
| 星期五 | 5 | Fri |
| 星期六 | 6 | Sat |
| 星期日 | 0 | Sun |
cron表达式字段特殊字符说明如下表所示。
特殊字符说明
| 特殊字符 | 含义 | 说明 |
|---|---|---|
| * | 表示该字段中的所有值 | 在“分钟”字段中表示每一分钟都执行。 |
| , | 指定多个值(可以不连续) | 在“月”字段中指定“Jan,Apr,Jul,Oct”或者“1,4,7,10”,表示1月,4月,7月和10月,在“星期几”字段中指定“Sat,Sun”或者“6,0”表示周六,周日。 |
| - | 指定一个范围 | 在“分钟”字段中使用0-3,表示从0分到3分 |
| ? | 指定一个或另一个 | 仅“日”和“星期几”字段可以指定。例如,如果指定了一个特定的日期,但你不关心该日期对应星期几,那么“星期几”字段就可以使用该特殊字符。 |
| / | 表示起步和步幅,n/m表示从n开始,每次增加m | 在“分钟”字段1/3表示在满足其它字段情况下的绝对时间1分(例如00:01:00)开始,每隔3分钟触发一次。 |
cron表达式配置示例如下表所示。
cron表达式配置示例
| 配置示例 | 示例说明 |
|---|---|
| 0 15 2 * * ? | 每天凌晨02:15:00执行 |
| 0 30 8 ? * Mon-Fri | 周一到周五上午08:30:00执行 |
| 0 45 7 1-3 * ? | 每月1, 2, 3号上午07:45:00执行 |
| 0 0/3 * ? * Mon,Wed,Fri,Sun | 周一、三、五、日,每隔三分钟执行一次 |
| 0 0/3 9-18 ? * Mon-Fri | 周一到周五09:00-18:00之间每隔三分钟执行一次 |
| 0 0/30 * ? * | 每30分钟执行一次 |