郑州住房和城乡建设局网站,游戏搬砖工作室加盟平台,组网方案设计,wordpress新用户cron表达式在线生成
在使用定时调度任务的时候#xff0c;我们最常用的#xff0c;就是cron表达式了。通过cron表达式来指定任务在某个时间点或者周期性的执行。
cron表达式的组成
cron表达式是一个字符串#xff0c;由6到7个字段组成#xff0c;用空格分隔。其中前6个字…cron表达式在线生成
在使用定时调度任务的时候我们最常用的就是cron表达式了。通过cron表达式来指定任务在某个时间点或者周期性的执行。
cron表达式的组成
cron表达式是一个字符串由6到7个字段组成用空格分隔。其中前6个字段是必须的最后一个是可选的。每个字段的含义如图所示 从左到右依次对每个字段指定相应的值就可以确定一个任务的执行时间点和周期了。
字符介绍
在大部分使用cron的场景下 - * / ? 这几个常用字符就可以满足我们的需求了。
常用
【*】每的意思。在不同的字段上就代表每秒每分每小时等。【-】指定值的范围。比如[1-10]在秒字段里就是每分钟的第1到10秒在分就是每小时的第1到10分钟以此类推。【,】指定某几个值。比如[2,4,5]在秒字段里就是每分钟的第2第4第5秒以此类推。【/】指定值的起始和增加幅度。比如[3/5]在秒字段就是每分钟的第3秒开始每隔5秒生效一次也就是第3秒、8秒、13秒以此类推。【?】仅用于【日】和【周】字段。因为在指定某日和周几的时候这两个值实际上是冲突的所以需要用【?】标识不生效的字段。比如【0 1 * * * ?】就代表每年每月每日每小时的1分0秒触发任务。这里的周就没有效果了。
不常用
SUN仅用于【周】字段表示星期日。也可以用数字1设置。周日到周六分别为SUNMONTUEWEDTHUFRI和SAT对应数字1234567。目前Quartz支持。L即last用于【日】【周】字段。这里需要注意的是在不同的字段的不同使用方式其含义有所差别。 用于日字段直接使用L代表每个月的最后一天。也支持偏移量的方式配置[L-1]则代表每月的倒数第二天。 用于周字段直接使用L代表每周的最后一天也就是等效于[7]或[SAT]但是如果配合上数字比如[7L]则代表每个月最后一个周六等效于[SATL]。目前Quartz支持。
常用cron表达式例子
10/2 * * * * ? 表示每2秒 执行任务
10 0/2 * * * ? 表示每2分钟 执行任务
10 0 2 1 * ? 表示在每月的1日的凌晨2点调整任务
20 15 10 ? * MON-FRI 表示周一到周五每天上午10:15执行作业
30 15 10 ? 6L 2002-2006 表示2002-2006年的每个月的最后一个星期五上午10:15执行作
40 0 10,14,16 * * ? 每天上午10点下午2点4点
50 0/30 9-17 * * ? 朝九晚五工作时间内每半小时
60 0 12 ? * WED 表示每个星期三中午12点
70 0 12 * * ? 每天中午12点触发
80 15 10 ? * * 每天上午10:15触发
90 15 10 * * ? 每天上午10:15触发
100 15 10 * * ? 每天上午10:15触发
110 15 10 * * ? 2005 2005年的每天上午10:15触发
120 * 14 * * ? 在每天下午2点到下午2:59期间的每1分钟触发
130 0/5 14 * * ? 在每天下午2点到下午2:55期间的每5分钟触发
140 0/5 14,18 * * ? 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发
150 0-5 14 * * ? 在每天下午2点到下午2:05期间的每1分钟触发
160 10,44 14 ? 3 WED 每年三月的星期三的下午2:10和2:44触发
170 15 10 ? * MON-FRI 周一至周五的上午10:15触发
180 15 10 15 * ? 每月15日上午10:15触发
190 15 10 L * ? 每月最后一日的上午10:15触发
200 15 10 ? * 6L 每月的最后一个星期五上午10:15触发
210 15 10 ? * 6L 2002-2005 2002年至2005年的每月的最后一个星期五上午10:15触发
220 15 10 ? * 6#3 每月的第三个星期五上午10:15触发