每 N 分钟运行一次 Cron 作业加上偏移量

问题描述 投票:0回答:3

*/20 * * * *
确保它每 20 分钟运行一次,但我想每 20 分钟运行一次任务,从整点 5 点开始。

这可以用 Cron 实现吗?

cron
3个回答
715
投票

要从整点 5 点开始每 20 分钟运行一次任务,请尝试以下操作:

 5-59/20 * * * *

解释

分钟字段中的

*
0-59/1
相同,其中
0-59
范围
1
步骤。该命令将在 range (0) 内的第一分钟运行,然后在距第一分钟 step (1) 的所有连续分钟运行,直到最后 (59)。

这就是为什么

*/20 * * * *
会在 0 分钟、20 分钟后和 40 分钟后运行——这与每 20 分钟相同。但是,
*/25 * * * *
将在 0 分钟、25 分钟后和 50 分钟后运行 - 这与每 25 分钟运行一次不同。这就是为什么通常需要在分钟字段中使用可均匀划分为 60 的步长值。

因此,要偏移开始时间,请明确指定范围并将第一个值设置为偏移量。

示例

5-59/20 * * * *
将在 5 分钟后、25 分钟后和 45 分钟后运行。

10-59/25 * * * *
将在 10 分钟后和 35 分钟后运行。

1-59/2 * * * *
将每隔奇数分钟运行一次。


90
投票

当然!

5,25,45 * * * * /your/cron

19
投票

你可以尝试:

*/5 * * * * sleep N; your job

© www.soinside.com 2019 - 2024. All rights reserved.