活到老学到老之Jenkins build triggers中的定时schedule规则细讲

前一篇文章讲了Jenkins如何创建 Pipeline Job:https://blog.csdn.net/zhang_jiamin/article/details/150415815?spm=1011.2415.3001.5331

这次细讲一下定时这块儿的规则,因为后面遇到了几个不同的使用场景,正好总结一下。

在 Jenkins 的 Build Triggers -> Build periodically -> Schedule 里,定时任务的写法遵循的是 Cron 表达式,格式和 Linux 的 cron 一样:

markup 复制代码
MINUTE HOUR DOM MONTH DOW
  • MINUTE:分钟(0--59)
  • HOUR:小时(0--23)
  • DOM:日期(1--31)
  • MONTH:月份(1--12 或者 Jan-Dec)
  • DOW:星期(0--7,0 和 7 都是周日,或者 Sun-Sat)

最后一位(DOW, day-of-week) 表示星期几:

  • 0 或 7 → 星期天 (Sunday)
  • 1 → 星期一 (Monday)
  • 2 → 星期二 (Tuesday)
  • 3 → 星期三 (Wednesday)
  • 4 → 星期四 (Thursday)
  • 5 → 星期五 (Friday)
  • 6 → 星期六 (Saturday)

例如:

每周一到周五,每天 8:30 执行一次

markup 复制代码
30 8 * * 1-5

每周一到周五,每天 9:00 执行一次

markup 复制代码
0 9 * * 1-5

每周六和周日凌晨 2:00 执行

markup 复制代码
0 2 * * 0,6

另外:

写 1-5 表示周一到周五,没问题。

也可以写成 Mon-Fri,Jenkins 同样支持英文缩写。

例如:

bash 复制代码
30 8 * * Mon-Fri

日期如果是2号,

在 Jenkins / Linux cron 里,不需要写前导 0。

写 2 和 02 的效果完全一样,Jenkins 会把 02 当成 2。

例如:

2 推荐写法(更标准)

02 也能运行,但只是"多余的 0"。

相关推荐
哈基咪怎么可能是AI1 小时前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行18 小时前
Linux和window共享文件夹
linux
木心月转码ing1 天前
WSL+Cpp开发环境配置
linux
崔小汤呀2 天前
最全的docker安装笔记,包含CentOS和Ubuntu
linux·后端
何中应2 天前
vi编辑器使用
linux·后端·操作系统
何中应2 天前
Linux进程无法被kill
linux·后端·操作系统
何中应2 天前
rm-rf /命令操作介绍
linux·后端·操作系统
何中应2 天前
Linux常用命令
linux·操作系统
葛立国2 天前
从 / 和 /dev 说起:Linux 文件系统与挂载点一文理清
linux
哇哈哈20213 天前
信号量和信号
linux·c++