创建 cron 作业以从任意单位开始每 X 个时间单位重复一次

创建 cron 作业以从任意单位开始每 X 个时间单位重复一次

我在 CentOS 上有一个 cron 作业,我想每 3 分钟执行一次,但我还有许多其他 cronjobs 从 0、3、6、9 开始每 3 分钟运行一次...

因此,为了避免我的服务器过于过载,我希望我的一些 cron 每 3 分钟运行一次,但从 1 分钟开始,依此类推:1、4、7...

我的 cron 通常是这样的:

*/3 * * * * 

我怎样才能做到这一点?

答案1

1-59/3是比较典型和简洁的指定方式,意思是“从1开始每3分钟一次”。

答案2

除了 heemayl 的答案之外,您还可以列出您想要的分钟数,尽管它比现有方式不太紧凑并且可能更容易出错:

1,4,7,10,13,16,19,22,25,28,31,34,37,40,43,46,49,52,55,58 * * * * some_command

答案3

您可以用作sleep 60第一个命令,以便您要运行的命令实际上在 1 分钟后运行,同时保持时间cron*/3

*/3 * * * * sleep 60 && some_command

相关内容