美文网首页
Cron表达式

Cron表达式

作者: Wezarp | 来源:发表于2020-11-09 17:11 被阅读0次

    最近在使用QuantumultX这个软件,其中有用到Cron,有些忘了,于是参考了一些资料,又复习了一遍,特此作个记录,以便随时翻阅。

    一.Cron表达式

    • 计划任务,在约定时间完成执行已经计划好的工作。实际上是由几个子表达式组成,他们之间用空格分隔,
    • Cron表达式有两种语法:
      (1)秒 分 时 天 月 星期 年
      (2)秒 分 时 天 月 星期

    二、各字段的含义

    • :允许设置的值为 0-59,可以出现 , - * / 这4个特殊字符
    • :允许设置的值为 0-59,可以出现 , - * / 这4个特殊字符
    • :允许设置的值为 0-23,可以出现 , - * / 这4个特殊字符
    • :允许设置的值为 1~31,可以出现 ,- * ? / L W C 这8个特殊字符
    • :允许设置的值为 (1-12)或者(JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV,DEC), 可以出现 , - * / 这4个特殊字符
    • 星期:允许设置的值为 (1~7)或者(SUN, MON, TUE, WED, THU, FRI, SAT),这里1是对应SUN的,不要搞 错,可以出现 , - * ? / L C # 这 8个特殊字符
    • :允许设置的值为 1970~2099,可以出现 , - * / 这4个特殊字符

    三、特殊字符的含义

    1. " * ": 代表所有可以匹配的值

    2. " - ": 代表一个范围,比如在秒中“0-3”,代表0-3秒

    3. " , ": 在同一个表达式中使用,代表依次被执行的时间,比如在分钟里“5,10”,代表在第5分钟和10分钟分别执行一次

    4.“ / ": 表示一个步进,每过多长时间执行一次,用在同一个表达式里,比如“5/2”,代表从第5分钟开始,每过2分钟执行一次
    5.“ ? ": 只能用在日和星期中。它也匹配域的任意值,但实际上表示不关心这个字段的值。因为日和星期会相互影响。例如想在每月的20日的0时0分0秒触发,不管20日到底是星期几,则只能使用如下写 法: "0 0 0 20 * ?", 其中最后一位只能用“?”,而不能使用"*" , 如果使用了,那么表示不管星期几的0点0分0秒这个时间,都会触发一次

    1. " L ": 代表最后一个可用的时间,"Last"的缩写,只能用在月份,星期表达式中。
      • 如果“L”前无内容,两个表达式中含义分别是:
        月:“L”在月中表示一个月的最后一天,1月31号,4月30号,等等
        星期:“L”在星期中表示一个星期的最后一天,也就是“7”或者“SAT”
      • 如果“L" 前有内容,那么就有另一个含义了,比如在星期中"5L",表示最后一个星期的星期4,在月中"5L”,表示 这个月的倒数第5天。

    7.“W": 代表”Weekday“(只有星期一星期五为工作日),只能用在月中,表示只在指定日期的最近有效工作日 触发,比如"12W",是个星期六,那么会在星期五,也就是11日执行。如果“12W"是个星期日,那么会在星 期一,13日执行。

    1. "LW": 连用表示在某个月最后一个工作日,即最后一个星期五。

    2. "#": 只能用在星期,表示某月的第几个星期几,比如“5#3",表示某月的第3个星期4

    四、举例练习,巩固成果

    1."30 *  *  ?" :由于后面全是任意匹配值,所以为每分钟的第30秒都执行
    2."30 10 1 20 * ?":表示每月20日的1时10分30秒执行
    3."30 10 1 ? 10 SUN 2020":表示2020年10月的每个星期日的1时10分30秒执行
    4."15,30,45 *  *  ?":表示每分钟的第15秒,30秒,45秒都执行一次
    5."15-45 *  *  ?":表示从第15秒开始到45秒,每秒都执行一次
    6."0 0/3 *   ?":表示 每小时的第0分0秒开始,每三分钟触发一次
    7."0 15 10 ? * 5L":表示每个月最后一个星期四的10点15分0秒触发任务
    8."0 15 10 ? * 6#3":表示每月的第三个星期五上午10:15触发

    相关文章

      网友评论

          本文标题:Cron表达式

          本文链接:https://www.haomeiwen.com/subject/slxrbktx.html