一,简介
cron表达式是linux系统定时任务执行的一个标准规范。按照cron表达式语法,我们可以定制任务触发执行的时间点。
二,cron表达式语法
顺序单位: 秒 分 时 日 月 周 年(一般省略不写)
* :使用星号(*) 指示着这个单位域上包含所有合法的值。例如,在月份域上使用*意味着每个月都会触发这个 trigger。
?:只能用在日域和周域上,但是不能在这两个域上同时使用。表示不关心这个域上是什么值。 这不同于星号,* 是指示着该域上的每一个合法值。如果日域上指定了值(包括*),则周域上只能是?;相反如果周域上指定了值(同样包括*),那日域上也只能是?;不然会出现语义含糊不清的情况。
m/n :表示单位域上时间的递增(从m开始以n递增)。例如:0/15 * * * * ? 表示:每隔15秒触发执行一次任务。
m-n :用于指定一个范围(m<n)。例如:0 45 3-8 * * ? 表示:每天的3,4,5,6,7,8点的45分整执行任务。
, :用于表示一系列取值。例如: 0 0,15,30,45 * * *?表示:每小时的0,15,30,45分执行任务。
L :用在日域表示每个月的最后一天,用在周域表示每月的最后一个星期X。例如:0 0 23 ? * 5L 表示:5L表示每月的最后一个星期4;1L表示每月的最后一个星期天,其他依此类推。
m#n :表示表示月中的第n个周(m-1)。例如:0 0 23 ? * 6#3 表示:每月第三个周五的23点整执行定时任务。
W :表示有效工作日(周一到周五),只能出现在周域,系统将在离指定日期的最近的有效工作日触发事件。例如:在周域使用5W,如果5日是星期六,则将在最近的工作日:星期五,即4日触发。如果5日是星期天,则在6日(周一)触发;如果5日在星期一 到星期五中的一天,则就在5日触发。另外一点,W的最近寻找不会跨过月份。
注意:所有的域中的值都有特定的合法范围,这些值的合法范围相当明显,例如:秒和分域的合法值为0到59,小时的合法范围是0到23,日域中值的合法范围是0到31,但是需要注意不同的月份中的天数不同。月份的合法值是0到11。或者用字符串JAN,FEB MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV 及DEC来表示。周域可以用1到7来表示(1=星期日)或者用字符串SUN, MON, TUE, WED, THU, FRI 和SAT来表示.
三,应用举例
"0 0 12 ? * WED"(每周三的中午12:00) 等价于 0 0 12 ? * 4
"0 15 10 ? * MON-FRI" 周一至周五的上午10:15触发
"0 15 10 * * ? 2005" 2005年的每天上午10:15触发
"0 15 10 L * ?" 每月最后一日的上午10:15触发
"0 15 10 ? * 6L" 每月的最后一个星期五上午10:15触发
"0 15 10 ? * 6#3" 每月的第三个星期五上午10:15触发
"0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发
"0 15 10 ? * 6L 2002-2005" 2002年至2005年的每月的最后一个星期五上午10:15触发
相关推荐
WinForm Cron表达式生成器 Quartz.Net Cron表达式生成器winform版 最近使用Quartz.net做了几个同步任务,感觉非常好。表达式设置也是非常灵活,但是新入手发现对表达式不熟,每次都要使用在线生成器。 于是写...
cron表达式校验,验证是否是正确的cron表达式,调用的主方法是function cronValidate(cronExpression )
cron 调度器 js cron表达式 生成秒循环 分循环 有开始日期结束日 最全面的cron表达式生成器 可嵌入html 网页 jsp asp等
Quartz的cron表达式。 Spring 定时任务@Scheduled cron表达式详解
用Java写的Cron表达式解析, Java swing编写的简洁界面,表达式到界面,界面到表达式,实现双重解析
Cron表达式Html源码,类似https://cron.qqe2.com/,很好用,很便宜 很有帮助的资源,cron表达式在线工具,直接可以用,方便快捷
Cron表达式插件此表达式生成器,可以直接打开,可以应用到自己的web页面 Quartz 中的 Cron 表达式。 可以再页面根据用户的选择自动获取Cron表达式传递到后台进行操作。 各种格式的Cron表达式获取: 日、月、年、...
cron表达式前端生成工具,html实现,可直接用,cron表达式前端生成工具,html实现,方便用于web项目当中。
Cron表达式写好了,不知道是否正确,如果执行间隔很长,根本没法测试,这个工具可以帮助你,他能输出所有的执行时间,你只需自己调整参数就行了,非常简单。提醒:目前常用的两个Cron表达式在线生成网站所提供的近期...
cron表达式校验,验证是否是正确的cron表达式,调用的主方法是function cronValidate(cronExpression ),有需要可以看一下
Java根据时间戳生成cron表达式,可传入时间范围灵活实现Cron基于日历形式的任务调度时间点,简单简洁,互用性强,可以灵活改动。
.net C# Cron表达式解析..可以解析Cron表达式,有例子也有实现,希望能帮助到需要的人,
Java Cron表达式解析 翻译为中文和英文
这可能是网上最完整的Cron表达式解析翻译方法。 JavaScript版-解释翻译Cron表达式(代码奉上)。 此方法分为JavaScript版和Java版本,有需要的朋友请根据自己需要下载。 希望我写的方法有帮助到你,不足之处请多多...
可以解析Cron表达式,个人有用希望你也有用。一个是例子,一个是代码实现,需要根据自己实现需求修改。
quartz的作业调度触发Cron表达式说明
Cron表达式生成器 通过这个生成器,您可以在线生成任务调度比如Quartz的Cron表达式,对Quartz Cron 表达式的可视化双向解析和生成
这可能是网上最完整的Cron表达式解析翻译方法。 Java版-解释翻译Cron表达式(代码奉上)。 此方法分为JavaScript版和Java版本,有需要的朋友请根据自己需要下载。 希望我写的方法有帮助到你,不足之处请多多指教。
基于BootStrap简洁美观Cron表达式选择器JS插件,只需要在项目中将JS文件导入和基本的BootStrap控件就可以运行,具体可看里面的demo.html
Cron表达式生成器java版(需要jdk1.8)亲测好用!