Jenkins的corn表达式

本文详细介绍了Cron表达式的使用,包括在Jenkins中的非标准cron表达式,如H和/的含义。H用于避免同一时间启动多个任务,而/则表示时间间隔。通过实例解析了不同字段的含义,如每小时的分钟、每天的小时、每月的日期、每年的月份和每周的天数。同时,文章解释了如何利用这些语法来精确控制任务的调度,以避免冲突。
摘要由CSDN通过智能技术生成

概念

https://crontab.guru/
在这里插入图片描述

Jenkins cron不是标准的cron表达式

第一个 * 表示每个小时的第几分钟,取值0~59

H * * * *
H:每小时执行一次

第二颗 * 表示小时,取值0~23

* 15 * * * 表示每天下午3点
* 1 * * * 表示每天凌晨1点

第三颗 * 表示一个月的第几天,取值1~31

* 1 5 * * 表示每月5日凌晨1点

第四颗 * 表示第几月,取值1~12

* 15 5 1 * 表示每年几月执行

第五颗 * 表示一周中的第几天,取值0~7,其中0和7代表的都是周日

测试

第一个*

第一个 * 表示每个小时的第几分钟,取值0~59
在这里插入图片描述
在当前时间后的,每五分钟去执行一次
在这里插入图片描述

第二个*

第二颗 * 表示小时,取值0~23

在每天的凌晨两点后,每隔五分钟构建一次
在这里插入图片描述
在每天的凌晨两点后,每隔30分钟构建一次
在这里插入图片描述
在每天每隔两个小时后的每隔30分钟构建一次
在这里插入图片描述

第三个 *

第三颗 * 表示一个月的第几天,取值1~31

* 1 5 * * 表示每月5日凌晨1点

第四个*

第四颗 * 表示第几月,取值1~12

在1到6月的1号的凌晨两点,每隔30分钟构建一次
在这里插入图片描述
在1到6月的1号,和10月到12月的凌晨两点,每隔30分钟构建一次
在这里插入图片描述

第五个*

第五颗 * 表示一周中的第几天,取值0~7,其中0和7代表的都是周日

周一到周六,并且在1到6月的1号,和10月到12月的凌晨两点,每隔30分钟构建一次
在这里插入图片描述
其上面也是说明了意思
在这里插入图片描述

不是标准corn表达式的原因:H、/

/:表示每隔多长时间,比如 */10 * * * * 表示 每隔10分钟

H的意思是:hash散列值,以job名取值,获取到以job名为入参的唯一值,相同名称值也相同,这个偏移量会和实际时间相加,获得一个真实的运行时间

意义在于:不同的项目在不同的时间运行,即使配置的值是一样的,比如 都是 15 * * * * ,表示每个小时的第15分钟开始执行任务,那么会造成同一时间内在Jenkins中启动很多job,换成 H/15 * * * * ,那么在首次启动任务时,会有随机值参与进来,有的会在17分钟启动 有的会在19分钟启动,随后的启动时间也是这个值。这样就能错开相同cron值的任务执行了。

H的值也可以设置范围

表示一小时内的任意时间(0-60之间的hash值;如果job不变化的话,当第一次取出25,那么后面也是25,)
H * * * * 

每10分钟
*/10 * * * * 

每10分钟,可能是7,17,27,起始时间hash,步长不变
H/10 * * * * 

每个周一至周六,凌晨3点45 执行1次
45 3 * * 1-6 

每个周一至周六,凌晨3点45 ,凌晨4点45,凌晨5点45 各执行1次
45 3-5 * * 1-6 

在40~48之间取值 其他同上
H(40-48) 3-5 * * 1-6 

每个周一至周六,凌晨3点45 ,凌晨5点45 各执行1次
45 3-5/2 * * 1-6 

0点开始,每间隔2小时执行一次 0:45、2:45、4:45
45 0-6/2 * * 1-6 * * 1-6

如果没有H了,便不会再随机了

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

?abc!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值