Cron表达式学习

举报
薛定喵君 发表于 2021/06/03 22:33:30 2021/06/03
【摘要】 常用规则助记 Cron表达式是一个以5或6个空格隔开为6或7个域的字符串 # 结构 左->右: 顺序秒数分钟小时日期月份星期年(可选)取值0-590-590-231-30(31)1-12或JAN-DEC1-7或SUN-SAT1970-2099特殊字符, - * /, - * /, - * /, - * / ? L W C, - * /, - * / ...

常用规则助记

Cron表达式是一个以5或6个空格隔开为6或7个域的字符串

# 结构

左->右:

顺序 秒数 分钟 小时 日期 月份 星期 年(可选)
取值 0-59 0-59 0-23 1-30(31) 1-12或JAN-DEC 1-7或SUN-SAT 1970-2099
特殊字符 , - * / , - * / , - * / , - * / ? L W C , - * / , - * / L # C , - * /

每一个域都使用数字,也可出现特殊字符:

字符 用途 例子
* 匹配该域的任意值 分钟域使用*, 表示每分钟都会触发事件
? 只能用在日期和星期两个域 每月的20日触发调度:13 13 15 20 * ?
- 范围 分钟域使用5-20:从5分到20分钟每分钟触发一次
/ 起始时间开始触发,然后每隔固定时间触发一次 分钟域使用5/20:5分钟触发一次,而25,45等分别触发一次
, 列出枚举值 分钟域使用5,20:在5和20分每分钟触发一次
L 最后,只能出现在星期和日期域 在星期域使用5L:在最后的一个星期四触发
W 有效工作日(周一到周五),只能出现在日期域,在离指定日期的最近的有效工作日触发事件 5W:星期六->星期五;星期天->周一
LW 在某个月最后一个工作日 最后一个星期五
# 确定每个月第几个星期几,只能出现在日期域 6#3:某月的第三个周五

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

# 示例

  • */5 * * * * * * 表示每5秒触发一次
  • 0 * * * * ? 每1分钟触发一次
  • 0 0 * * * ? 每天每1小时触发一次
  • 0 0 10 * * ? 每天10点触发一次
  • 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点触发

文章来源: blog.csdn.net,作者:薛定喵君,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/jsxg2009/article/details/115244157

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。