【问题标题】:Cron Job daily scheduleCron Job 每日日程安排
【发布时间】:2019-06-06 02:09:41
【问题描述】:

我需要一个 cron 任务。它应该在周一到周四每天运行,从 16:30 开始,每 5 分钟执行一次,直到第二天凌晨 03:30。周五从 16:30 开始,每 5 分钟执行一次,直到周一凌晨 03:30。非常感谢!

【问题讨论】:

  • 您想从什么时候开始?午夜还是 23:05?您确定导出将在 5 分钟后结束吗?
  • 我希望它在每个工作日的 23:05 开始,每 5 分钟运行一次,直到第二天上午 11:00。
  • 你想在周日的 23:05 运行周一的跑步吗?

标签: server cron


【解决方案1】:

根据您的评论,您需要两条这样的记录:

这个封面:

需要从周一到周四的每个工作日运行,从 23:05,每 5 分钟导出一次,直到第二天上午 11:00

5,10,15,20,25,30,35,40,45,50,55 23 * * 1-4 command
*/5 0-11 * * 2-5 command

这个封面:

星期五从 23:05 开始运行到星期一上午 11:00

5,10,15,20,25,30,35,40,45,50,55 23 * * 5 command

*/5 * * * 6,7 command
*/5 0-11 * * 1 command

当我们优化 cron 记录时,我们会得到类似的结果:

*/5 0-11 * * 1-5 command
5,10,15,20,25,30,35,40,45,50,55 23 * * 1-5 command
*/5 * * * 6,7 command

EDIT1: 根据您需要的问题更改:

周一至周四,16:30 开始,每 5 分钟执行一次 到次日凌晨03:30

30,35,40,45,50,55 16 * * 1,2,3,4 command
*/5 17,18,19,20,21,22,23 * *  1,2,3,4,5 command
*/5 0,1,2 * * 2,3,4,5 command
0,5,10,15,20,25 3 * * 2,3,4,5 command

周五 16:30 开始,每 5 分钟执行一次,直到周一 凌晨 03:30

30,35,40,45,50,55 16 * * 5 command
*/5 * * * 6,7 command
*/5 0,1,2 * * 1 command
0,5,10,15,20,25 3 * * 1 command

并“优化” cron 记录

30,35,40,45,50,55 16 * * 1-5 command
*/5 0,1,2 * * 1,2,3,4,5 command
0,5,10,15,20,25 3 * * 1,2,3,4,5 command
*/5 17,18,19,20,21,22,23 * *  1,2,3,4,5 command
*/5 * * * 6,7 command

【讨论】:

  • 可以将第二行缩减为5-55/5 23 * * 1-5
  • @kvantour,我通常使用旧的 UNIX 定义并且不知道这个选项 :)
  • 谢谢大家。在我使用的模块中,我可以使用两条线,所以我使用 */5 0-11 * * 1-5;5-55/5 23 * * 1-5。关于周末,我还需要从周五 23:05 开始,到周一上午 11:00 结束。有什么想法吗?
  • @RomeoNinov 非常感谢,我正在尝试,目前看起来不错!
  • 我做到了:)))。再次感谢,不胜感激!
猜你喜欢
  • 2019-06-08
  • 2011-09-28
  • 1970-01-01
  • 2011-08-31
  • 2015-12-05
  • 2017-04-11
  • 2016-12-10
  • 2021-09-17
  • 2012-10-08
相关资源
最近更新 更多