cron
2023/6/22大约 2 分钟
cron
Cron适用于周期性执行、日常维护、在某时刻需要完成的单次任务等场景。Cron表达式是一个具有时间含义的字符串,字符串以5个空格隔开,分为6个域,格式为
X X X X X X。其中X是一个域的占位符。单个域有多个取值时,使用半角逗号,隔开取值。每个域可以是确定的取值,也可以是具有逻辑意义的特殊字符。
秒 分 时 日 月 周
取值范围
| 域 | 是否必需 | 取值范围 | 特殊字符 |
|---|---|---|---|
| 秒 | 是 | [0, 59] | 不支持 |
| 分钟 | 是 | [0, 59] | 对, 和/有限支持(如果使用逗号,数字之间的间隔必须大于等于30分钟;如果使用/ ,/后面的数字必须大于等于30)。 |
| 小时 | 是 | [0, 23] | * , - / |
| 日期 | 是 | [1, 31] | * , - / ? L |
| 月份 | 是 | [1, 12]或[JAN, DEC] | * , - / |
| 星期 | 是 | [1, 7]或[SUN, SAT]若您使用[1, 7]表达方式,1代表星期天,2代表星期一。 | * , ? |
连接符
- 【*】:每的意思。在不同的字段上,就代表每秒,每分,每小时等。
- 【-】:指定值的范围。比如[1-10],在秒字段里就是每分钟的第1到10秒,在分就是每小时的第1到10分钟,以此类推。
- 【,】:指定某几个值。比如[2,4,5],在秒字段里就是每分钟的第2,第4,第5秒,以此类推。
- 【/】:指定值的起始和增加幅度。比如[3/5],在秒字段就是每分钟的第3秒开始,每隔5秒生效一次,也就是第3秒、8秒、13秒,以此类推。
- 【?】:仅用于【日】和【周】字段。因为在指定某日和周几的时候,这两个值实际上是冲突的,所以需要用【?】标识不生效的字段。比如【0 1 * * * ?】就代表每年每月每日每小时的1分0秒触发任务。这里的周就没有效果了。
示例
| 示例 | 说明 |
|---|---|
0 15 10 ? * * | 每天上午10:15执行任务 |
0 15 10 * * ? | 每天上午10:15执行任务 |
0 0 12 * * ? | 每天中午12:00执行任务 |
0 0 10,14,16 * * ? | 每天上午10:00点、下午14:00以及下午16:00执行任务 |
0 0/40 9-17 * * ? | 每天上午09:00到下午17:00时间段内每隔40分钟执行任务 |
0 0 12 ? * WED | 每个星期三中午12:00执行任务 |
0 15 10 15 * ? | 每月15日上午10:15执行任务 |
0 15 10 L * ? | 每月最后一日上午10:15执行任务 |
0 0,30 14 ? 3 WED | 每年3月的每个星期三下午14:00和14:30各执行一次任务 |
更新日志
2024/10/9 01:57
查看所有更新日志
6f732-于ded7f-于3a085-于4655f-于a0e4c-于37f63-于74ff6-于07f77-于fafd6-于c6002-于36ac8-于6288a-于4ca58-于934d5-于1bd38-于38d4f-于607de-于f8c5d-于e43eb-于8e7aa-于e86e7-于befae-于7c63e-于29497-于adeb0-于8f81f-于a410e-于