在 Jenkins 中,“定时任务”通常有两种常见场景:
下面分别说明。
示例:
H 2 * * * # 每天凌晨2点执行
H/30 * * * * # 每30分钟执行一次
H 9-18 * * 1-5 # 工作日 9点到18点之间执行
H表示 Jenkins 自动哈希分散时间,避免所有任务同时跑
在 Jenkinsfile 中:
pipeline {
agent any
triggers {
cron('H 2 * * *')
}
stages {
stage('Build') {
steps {
echo '定时任务执行'
}
}
}
}
Jenkins 使用的是 类 Unix cron,但略有扩展:
分钟 小时 日 月 星期
| 字段 | 范围 |
|---|---|
| 分钟 | 0–59 |
| 小时 | 0–23 |
| 日 | 1–31 |
| 月 | 1–12 |
| 星期 | 0–7(0和7都是周日) |
特殊符号:
* 任意H Jenkins 哈希, 列举- 范围/ 间隔示例:
H 0 * * 1 # 每周一凌晨
H/15 * * * * # 每15分钟
适合执行清理、通知等系统任务:
示例(Script Console):
def cron = Jenkins.instance
更常见方式是用 Pipeline 定时器 Job:
pipeline {
agent any
triggers {
cron('H 3 * * *')
}
stages {
stage('Clean') {
steps {
cleanWs()
}
}
}
}
在 Manage Jenkins → Configure System:
JAVA_OPTS=-Duser.timezone=Asia/Shanghai如果你有具体需求(比如:每天几点跑、只跑工作日、跑 Shell/Python 脚本),可以告诉我,我可以直接帮你写配置。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。