前言
Cron表达式常被用于设置触发时间,比如Quartz中。写这篇的目的是配置Jenkins中Build periodically(定时构建)和Poll SCM(扫描SCM发生改变后构建),结果发现用的不是Cron后面有说明
Cron Expression配置说明
1.Cron Expression字符串格式
Cron Expression字符串的格式为“秒 分 小时 日 月 星期 年”,其中“年”是可选的,其余6个字段是必须的,每个字段间用空格隔开,可以用数字表示(数字表示精确匹配),也可以yongoing通配符表示(例如*表示任意数字,?表示由其它字段决定)
2.Cron Expression 取值范围
字段 | 取值范围 | 可接受通配符 |
秒 | 0-59 | , - * / |
分 | 0-59 | , - * / |
小时 | 0-23 | , - * / |
日 | 1-31 | , - * / ? L C W |
月 | 1-12 或者JAN-DEC | , - * / |
星期 | 1-7 或者 SUN-SAT(1表示周日,7表示周六) | , - * / ? L C # |
年(可选) | 1970-2099 | , - * / |
3.通配符说明
通配符 | 可用于字段 | 说明 |
? | 日、星期 | 由其它字段确定,比如确定了年月日后星期是固定的,此时必须用? |
* | 所有字段 | 任意数字 |
- | 所有字段 | 表示范围例如MON-FRI表示周一到周五的所有工作日 |
, | 所有字段 | 表示多个值,比如MON,WED,表示周一或周三 |
/ | 所有字段 | 表示数值的增度。例如 1/3表示从1开始,每次递增3,“1,4,7,10...” |
L | 日、星期 | 表示Last,最后一个的意思,代表月末或周六(根据放的位置) |
C | 日、星期 | 表示Calendar,由日历计算出来的日子,5C表示第一天或5号之后;星期中1C代表日历中第一天或周日以后(1表示周日) |
W | 日 | 表示Working Day,工作日;例如15W,表示本月内15日最近的工作日,返回的一定是本月内。 |
# | 星期 | 表示第几个星期几,THU#3,表示第三个星期四,#前面是星期,后面是第几个 |
4.例子
59 59 12 01 01 ? // 精确匹配,表示 1月1日12点59分59秒,星期?
0 0 12 * * ? // 模糊匹配,表示 每天的12点,星期?
0 0 * 01 01 ? // 模糊匹配,表示每年1月1日的每个整点
0 0 0 * * ? 2010 // 模糊匹配,表示2010年每天0时
0 0 * * * ? // 每天每个小时
0 30 10 ? * MON // 每周一上午10:30
0 0 12 ? * MON-FRI // 每个工作日(周一到周五)的12:00
0 0 8 LW * ? // 每月的最后一个工作日8:00
0 0 10 1/2 * ? // 每月1号、3号、5号、7号... 的10:00
0 0 10 ? 11 THU#4 // 每年11月的第四个星期四(感恩节)上午10点
0 0 8,17 * * ? 2009-2015 //2009到2015年每天的8点和17点
0 0 8-17 * * ? 2009-2015 //2009到2015年每天的8点到17点
Jenkins中日期定义
1.字符串格式
Cron表达式字符串的格式为“分 小时 日 月 星期 年”,其中“年”是可选的,其余5个字段是必须的。
区别(1)没有秒 (2)星期的取值范围是0-6(SUN-SAT)
2.取值范围
字段 | 取值范围 | 通配符 |
分 | 0-59 | * / , - |
时 | 0-59 | * / , - |
日 | 1-31 | * / , - ? L W |
月 | 1-12 or JAN-DEC | * / , - |
星期 | 0-6 or SUN-SAT | * / , - ? L # |
年 | 1970–2099 | * / , - |
2.例子
*/5 * * * * // 每5分钟
H/5 * * * * // 每5分钟 推荐
5 * * * * // 每小时的第5分钟
0 8 * * * // 每天8点
0 16,18,20,22 * * * // 每天的16点、18点、20点、22点
0 1,18 * * * // 每天的1点和18点
03 09 * * 1-5 // 工作日(周日到周五)的9点3分
59 23 * * 1-5 或者 @midnight // 工作日(周日到周五)的9点3分
相关推荐
Cron Expression:一个cron表达式解析器
Cron Expression UI :输入组件,可轻松直观地生成cron表达式,如 例子 使用说明 NPM 从安装软件包 npm install cron-expression-input@1.2.7 在你的代码中 import "cron-expression-input/lib/cron-expression-...
NULL 博文链接:https://wv1124.iteye.com/blog/503928
cron表达式工具, 有web版及exe版本. exe版本需安装java.
十分钟教会你cron表达式,介绍怎么写cron表达式的语法
部署的时候启动定时器 博文链接:https://jessen163.iteye.com/blog/1265901
安装将 CronExpressionGenerator 库添加到您的composer.json文件中: composer require swekaj/cron-expression-generator用法要将其与一起使用,您必须将CronExpressionGenerator\FakerProvider类添加到 Faker 生成...
Cron表达描述符 将 cron 表达式转换为人类可读描述的 .NET 库。 作者:Brady Holt ( )许可证: 特征 支持所有 cron 表达式特殊字符,包括 * / , - ? 体重,# 支持5、6(w /秒或年)或7(w /秒和年)部分cron表达式...
这可能是网上最完整的Cron表达式解析翻译方法。 JavaScript版-解释翻译Cron表达式(代码奉上)。 此方法分为JavaScript版和Java版本,有需要的朋友请根据自己需要下载。 希望我写的方法有帮助到你,不足之处请多多...
/var/spool/cron/ cron Cron服务 cron是Linux系统下一个自动执行指定任务的程序. cron服务要通过命令启动...Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法
cron表达式cron生成器
vue-cron表达式组件
cron 表达式 包含 秒 分 时 天 月 年 粗浅的cron 表达式
scala-cron 可以解析 cron 语法字符串并计算下一个时间表。 安装 生成.sbt libraryDependencies + = " com.github.buster84 " %% " scala-cron " % " 1.0.0 " 用法 $ activator console scala> import ...
基于C的Cron表达式解析,无需额外的库,直接代码实现,方便移植,稳定性可靠。
WinForm Cron表达式生成器 Quartz.Net Cron表达式生成器winform版 最近使用Quartz.net做了几个同步任务,感觉非常好。表达式设置也是非常灵活,但是新入手发现对表达式不熟,每次都要使用在线生成器。 于是写...
crontab 配置串 c++处理库 linux * * * * * 格式串处理 c++封装 正常编译后使用 可以直接使用 改子github的代码
Cron表达式写好了,不知道是否正确,如果执行间隔很长,根本没法测试,这个工具可以帮助你,他能输出所有的执行时间,你只需自己调整参数就行了,非常简单。提醒:目前常用的两个Cron表达式在线生成网站所提供的近期...
cron,cron表达式,cron表达式详解
资源为js文件,下载后直接用script标签引入,需要解析时调用该js第一个方法,参数为cron定时器表达式字符串,例如:translateCRONToChinese("0 0 12 */1 * ?");