<>官方说明翻译

MINUTE HOUR DOM MONTH DOW

这个字段就好比cron定时任务语法(只有较小的差别),具体来说,每行由5个被TAB或空格分割的字段组成。

其中每个字段除了可以使用取值范围内的值外,还能使用一些特殊的字符。
* 匹配范围内所有值 M-N 匹配M~N范围内所有值 M-N/X 或者 */X 在指定M~N范围内或整个有效区间内每隔X构建一次 A,B,...,Z
匹配多个值
为了在系统中生成定时任务,符号H(代表“Hash”,后面用“散列”代替)应该用在可能用到的地方,例如:为十几个日常任务配置0 0 * *
*将会在午夜产生较大峰值。相比之下,配置H H * * * 仍将每天一次执行每个任务,不是都在同一时刻,可以更好的使用有限资源。

符号H可用于范围,例如,H H(0-7) * * * 代表凌晨0:00到 上午7:59一段时间。你还可以用H代表有或无范围的区间。

符号H 在一定范围内可被认为是一个随机值,但实际上它是任务名称的一个散列而不是随机函数。

需要注意的是,月份中的某天-DOM字段,类似于*/3 或者 H/3 的短周期由于月份的天数不固定,在大多数月尾总不会工作。例如,*/3
将会在一个月里面的第一天、第四天。。。第31天执行,下个月的那天继续重复执行。散列一般被选择在1-28天内,所以H/3将会在跑到月底的3-6天内导致空白。(长时间循环将会导致长度不一,但是这种影响也是不明显的。)

空行和以#开头的行将会被认为是注释。

另外,@yearly, @annually, @monthly, @weekly, @daily, @midnight, 和
@hourly也支持别名。这些使用散列系统自动匹配,例如:@hourly 和 H * * * *
一样代表一个小时内的任何时刻。@midnight实际上代表凌晨0:00到凌晨2:59之间的一段时间。

例如:
每隔5分钟构建一次 H/5 * * * * 每两小时构建一次 H H/2 * * * 每天中午12点定时构建一次 H 12 * * * 每天下午18
点定时构建一次 H18 * * * 在每个小时的前半个小时内的每10分钟 H(0-29)/10 * * * * 每两小时45分钟,从上午9:45开始,每天下午3
:45结束 45 9-16/2 * * 1-5 每两小时一次,每个工作日上午9点到下午5点(也许是上午10:38,下午12:38,下午2:38,下午4:38)
HH(9-16)/2 * * 1-5

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信