规则语法
:匹配该域的任意值;如用在分所在的域,表示每分钟都会触发事件;
?:匹配该域的任意值;
-:匹配一个特定的范围值;如时所在的域的值是10-12,表示10、11、12点的时候会触发事件;
,:匹配多个指定的值;如周所在的域的值是2,4,6,表示在周一、周三、周五就会触发事件(1表示周日,2表示周一,3表示周二,以此类推,7表示周六);
/:左边是开始触发时间,右边是间隔的时间;如秒所在的域的值是5/15,表示5秒、20秒(隔15秒)、35秒(隔15秒)、50秒(隔15秒)时都触发一次事件;
L:最后(last),表示该域的最后一个值;如果是用在天这个域,表示月的最后一天;如果是用在周所在的域,如6L,表示某个月最后一个周五。
W:工作日(weekday);如天所在的域的值是15W,表示本月15日最近的工作日;如果15日是周六,触发器将触发上14日周五;如果15日是周日,触发器将触发16日周一;如果15日不是周六或周日,而是周一至周五的某一个,那么它就在15日当天触发事件;
#:用来指定每个月的第几个星期几;如6#3表示某个月的第三个星期五;
参考
Cron表达式 | 表示的含义 |
---|---|
0 0 12 * * ? | 每天12:00触发事件 |
0 15 10 ? * * | 每天10:15触发事件 |
0 15 10 * * ? | 每天10:15触发事件 |
0 15 10 * * ? * | 每天10:15触发事件 |
0 15 10 * * ? 2005 | 2005年的每天10:15触发事件 |
0 * 14 * * ? | 每天14点开始触发,每分钟触发一次,14:59分结束 |
0 0/5 14 * * ? | 每天14点开始触发到14:59分结束的每5分钟触发一次事件 |
0 0/5 14,18 * * ? | 每天14点开始到14:59期间和18点到18:59期间的每5分钟触发一次事件 |
0 0-5 14 * * ? | 每天14点到14:05期间的每1分钟触发一次事件 |
0 10,44 14 ? 3 WED | 每年3月的星期三的14:10和14:44触发一次事件 |
0 15 10 ? * MON-FRI | 周一至周五的10:15触发一次事件 |
0 15 10 15 * ? | 每月15日10:15触发一次事件 |
0 15 10 L * ? | 每月最后一日的10:15触发一次事件 |
0 15 10 ? * 6L | 每月的最后一个星期五10:15触发一次事件 |
0 15 10 ? * 6L 2002-2005 | 2002年至2005年的每月的最后一个星期五10:15触发一次事件 |
0 15 10 ? * 6#3 | 每月的第三个星期五10:15触发一次事件 |