• Cron表达式


    总结自:https://www.cnblogs.com/javahr/p/8318728.html

    Cron有两种语法形式:

    1、Seconds Minutes Hours DayofMonth Month DayofWeek Year

    2、Seconds Minutes Hours DayofMonth Month DayofWeek

    即:       秒        分        小时 月份中的日期 月份 星期中的日期 年

    各字段解析:

    字段 允许值 允许的特殊字符
    秒(Seconds) 0~59的整数 , - * /    四个字符
    分(Minutes 0~59的整数 , - * /    四个字符
    小时(Hours 0~23的整数 , - * /    四个字符
    日期(DayofMonth 1~31的整数(但是你需要考虑你月的天数) ,- * ? / L W C     八个字符
    月份(Month 1~12的整数或者 JAN-DEC , - * /    四个字符
    星期(DayofWeek 1~7的整数或者 SUN-SAT (1=SUN , - * ? / L C #     八个字符
    年(可选,留空)(Year 1970~2099 , - * /    四个字符

    特殊字符解析:

    * :匹配该域的任意(每个)值。假如在Minutes域使用*, 即表示每分钟都会触发事件。简单列即为“每xx”

    ?:只能用于日期和星期,且只有一方能用,也是匹配任意值,但指的是符合另一方规则的任意值,相当于我随便,听你的

    备注:日期与星期有天然的冲突,例如如果我相匹配每个月的20号(DayofMonth 20),那么星期该如何处理?‘*’当然不行,这是就得使用‘?’,相当于“每个月20号,随便哪个星期”

    -:表示一个范围内的任意(每个)值,如Minutes域使用5-20,表示:从5分到20分钟,每分钟触发一次。

    /:表示起始时间开始触发(起始时间也会触发),每隔固定时间触发一次。例如在Minutes域使用5/20,则意味着5、25、45....触发

    ,:枚举出触发时间。例如:在Minutes域使用5,20,则意味着在5和20分触发

    L:只能用于日期和星期,表示月/星期的最后一个匹配日(注意不是最后一天),例如:DayofWeek域使用5L,意味着在最后的一个星期四触发

    W:只能用于日期,表示最近的工作日,例如:DayOfMonth域使用5W,如果5号是星期日,则匹配到下周的星期一

    LW:L与W连用,但并不是概念的结合,而是此月的最后一个工作日。

    #:用于DayofWeek,不仅仅表示星期几,能与数字结合,表示某个月的第几个星期几,例如4#2,即某月的第二个星期三

  • 相关阅读:
    前端安全【面试】
    防xss攻击
    前端工程化
    前端项目构建——运维
    react入门
    OpenGL Windows 窗口程序环境搭建
    Django 列的自定义显示
    设计模式之 SOA面向服务的体系
    设计模式之Builder建造者模式 代码初见
    设计模式之Factory工厂模式的好处
  • 原文地址:https://www.cnblogs.com/yanze/p/10695541.html
Copyright © 2020-2023  润新知