使用Cron表达式

本文最后更新于:8 个月前

Cron 表达式

Cron 表达式有七个必需字段,按空格分隔。

第一位 第二位 第三位 第四位 第五位 第六位 第七位
分钟 小时 星期

其中,每个字段都有相应的取值范围:

字段 通配符
0-59 的整数 , - * /
分钟 0-59 的整数 , - * /
小时 0-23 的整数 , - * /
1-31 的整数(需要考虑月的天数) , - * /
1-12 的整数 或 JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC , - * /
星期 0-6 的整数 或 MON,TUE,WED,THU,FRI,SAT,SUN;其中 0 指星期一,1 指星期二,依次类推 , - * /
1970~2099 的整数 , - * /

通配符

通配符 含义
, (逗号) 代表取用逗号隔开的字符的并集。例如:在“小时”字段中 1,2,3 表示1点、2点和3点
- (破折号) 包含指定范围的所有值。例如:在“日”字段中,1-15 包含指定月份的 1 号到 15 号
* (星号) 表示所有值。在“小时”字段中,* 表示每个小时
/ (正斜杠) 指定增量。在“分钟”字段中,输入 1/10 以指定从第一分钟开始的每隔十分钟重复。例如,第 11 分钟、第 21 分钟和第 31 分钟,依此类推

注意事项

  • 在 Cron 表达式中的“日”和“星期”字段同时指定值时,两者为“或”关系,即两者的条件分别均生效。

示例

下面展示了一些 Cron 表达式和相关含义的示例:

  • */5 * * * * * * 表示每5秒触发一次
  • 0 0 2 1 * * * 表示在每月的1日的凌晨2点触发
  • 0 15 10 * * MON-FRI * 表示在周一到周五每天上午10:15触发
  • 0 0 10,14,16 * * * * 表示在每天上午10点,下午2点,4点触发
  • 0 */30 9-17 * * * * 表示在每天上午9点到下午5点内每半小时触发
  • 0 0 12 * * WED * 表示在每个星期三中午12点触发

::: tip
内容来自微信开放文档
:::


使用Cron表达式
https://www.chanx.tech/cron/
作者
ischanx
发布于
2020年9月20日
更新于
2023年8月7日
许可协议