是否可以让 cron 作业仅在特定时段之间运行?

是否可以让 cron 作业仅在特定时段之间运行?

我正在编辑一个 crontab,希望它每分钟运行一次,但只在晚上 10 点到凌晨 2 点之间运行。在这个时间之外,我希望它每 10 分钟运行一次,但我不确定这是否可行。

任何帮助都值得感激,谢谢。

答案1

最好将其分为两个单独的工作,每个小时组一个

* 22-23,0-2 * * * command
*/10 2-22 * * * command

答案2

用两行来做是最简单的。

* 22-23,0-2 * * * command
*/10 2-22 * * * command

不过,这可能是 vixie cron 的特定语法。检查man 5 crontab

答案3

是的,这是可能的。摘自 crontab(5):

允许使用数字范围。范围是用连字符分隔的两个数字。指定的范围是包含的。例如,对于“小时”条目,8-11 指定在 8、9、10 和 11 点执行。

允许使用列表。列表是一组用逗号分隔的数字(或范围)。示例:1,2,5,9'', 0-4,8-​​12''。

(假设 Vixie Cron)

相关内容