Cron表达式(七子表达式)
作者:互联网
一、七子含义
秒 | 分 | 时 | 日 | 月 | 周 | 年 | |
---|---|---|---|---|---|---|---|
可用的值 | 0~59 | 0~59 | 0~23 | 1~31 | 1~12(JAN-DEC) | 1~7(SUN-SAT) | 1970~2099 |
可用的通配符 | , - * / | , - * / | , - * / | , - * / ? L W | , - * / | , - * / ? L # | , - * / |
是否必填 | 是 | 是 | 是 | 是 | 是 | 是 | 否 |
二、可用值说明
秒(Seconds):可用数字"0~59"表示。
分(Minutes):可用数字"0~59"表示。
时(Hours):可用数字"0~23"表示。
日(Day-of-Month):可用数字"1~31"表示,但要注意具体月份的天数。
月(Month):可用数字"1~12"或单词缩写"JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC"表示。
周(Day-of-Week):可用数字"1~7"或单词缩写"SUN,MON,TUE,WED,THU,FRI,SAT"表示(用数字表示时注意"1"表示周日)。
年(Year):可用数字"1970~2099"表示,此项非必填。
三、可用通配符说明
通配符 | 适用域 | 含义 | 实例 |
---|---|---|---|
* | 所有 | 表示所有值 | 在分的位置上设置"*",表示每分钟都会触发。 |
? | 日和周 (日和周不能同时为"?") |
不需要关心当前位置的值,表示每月的某一天,或每周的某一天 | "0 0 0 1 * ?"表示每月1号触发,但不关心是周几,所以周的位置设置为"?"; "0 0 0 ? * 2"表示每周一触发,但不关心是多少号,所以日的位置设置为"?"。 |
- | 所有 | 表示区间 | 在时的位置上设置"10-12",表示"10点、11点、12点"触发。 |
, | 所有 | 表示指定多个值 | 在周的位置上设置"MON,WED,FRI",表示"周一、周三、周五"触发。 |
/ | 所有 | 用于递增触发 | 在秒的位置上设置"5/15",表示从5秒开始,每隔15秒触发一次(5,20,35,50)。 在月的位置上设置"1/7",表示每月1号开始,每隔7天触发一次。 |
L(Last) | 日和周 | 表示每月或每周的最后一天; XL表示每月的最后一个周X |
"0 0 0 L * ?"表示每月的最后一天触发; "0 0 0 ? * L"表示每月的最后一个周六触发; "0 0 0 ? * 2L"表示每月的最后一个周一触发。 |
W(Work) | 日 | 表示离指定日期最近的工作日(周一至周五,忽略节假日)("W"前的数字表示多少号) | 在日的位置上设置"15W",表示离15号的最近的工作日触发(若15号为周六,则14号触发;若15号为周日,则16号触发;若15号为工作日,则当天触发); 在日的位置上设置"1W",表示当月1号往后最近的工作日触发。(若1号为周六,则3号触发); "L"和"W"可组合使用。如果在日字段上设置"LW",则表示在本月的最后一个工作日触发。 |
# | 周 | N#M表示每月的第M个周N | "0 0 0 ? 5 1#2"表示母亲节(每年5月的第二个周日); "0 0 0 ? 6 1#3"表示父亲节(每年6月的第三个周日)。 |
附:在线Cron表达式生成器 (pppet.net)
标签:表示,触发,15,可用,每月,Cron,设置,七子,表达式 来源: https://www.cnblogs.com/pingcode/p/16438031.html