容器服务定时任务 (CronJob)采用 Cron 语句设定任务的触发时间。本文介绍容器服务中适配的 Cron 语句用法。
定时任务采用 Cron 语句,通过分钟、小时、日期、月份和星期,一共五个区域,为任务设定具体的执行时间。
# ┌───────────── 分钟 (0 - 59) # │ ┌───────────── 小时 (0 - 23) # │ │ ┌───────────── 日期 (1 - 31) # │ │ │ ┌───────────── 月份 (1 - 12) # │ │ │ │ ┌───────────── 星期 (0 - 6) (周日到周一;在某些系统上,7 也是星期日) # │ │ │ │ │ # │ │ │ │ │ # │ │ │ │ │ # * * * * *
注意
如果需要将触发时间具体到 日期,那么建议不设定 星期,以免任务在限定时间外触发。日期和星期同时设定时,其中一个满足即会触发任务执行。
支持通过 Cron 表达式在一个区域里填写多个数值,满足不同的任务执行需求。
,
):表示列举,例如 1,3,4,7 * * * *
表示在每小时的 1、3、4、7 分时,执行任务。-
):表示范围,例如 1-6 * * * *
,表示每小时的 1 到 6 分钟内,每分钟都会执行任务。*
):代表任何可能的值,例如在 “小时域” 里的星号等于是 “每一个小时”。/
) :表示每隔多长时间执行,例如 */2 * * * *
表示在每个可以被 2 整除的时间执行任务,即 “0,2,……,56,58”。表达式 | 语义 |
---|---|
*/20 1-6 * * 0,1,3 | 在每个星期日、星期一和星期三的 01:00 和 06:59 之间的第 0、20 和 40 分钟执行。 |
59 1 1-7 4 0 | 4 月 1 日 至 7 日以及 4 月余下的每一个星期日的 1 时 59 分执行。 |