【问题标题】:Specify arbitrary start and end times for cron job指定 cron 作业的任意开始和结束时间
【发布时间】:2013-06-01 17:09:58
【问题描述】:

对于 Quartz Cron,是否可以指定一个对应于的 cron 表达式:

Run every 6 minutes, starting from 9:12 AM until 5:37 PM.

我尝试编写 cron 表达式 0 12-37/6 9-17 ? * *,但这每小时只运行一次。我还 understand 表示 cron 表达式 0 /6 9-17 ? * * 对应于 Run every 6 minutes between the hours of 9 AM and 5 PM

但是有没有办法限制该 cron 表达式的开始和结束分钟?更一般地说,我可以指定一个任意的开始和结束时间,相关作业每隔n 时间间隔运行一次吗?

【问题讨论】:

  • 下午 5 点是 17 小时(不是 14 小时)。 0 12-37/6 9-17 * * * 应该在 9:12、19、24、30 和 36 跳到 10:12 并在该小时运行 5 次。并继续每小时运行 5 次,直到下午 5:36。

标签: cron quartz-scheduler crontab scheduler cronexpression


【解决方案1】:

您可以使用 3 个 cron 字符串来完成:

0 12-59/6 9 * * *
0 /6 10-16 * * *
0 0-37/6 17 * * *

给他们所有相同的任务来运行。

【讨论】:

  • 哦,亲爱的,请解释一下。我在这里读过,但仍然很困惑quartz-scheduler.org/documentation/quartz-1.x/tutorials/…
  • 我建议您询问 Stack Overflow 的具体问题。或者也许你应该只是谷歌更多的 Quartz 教程或一个好的 cron 教程。 Quartz 中的重复事件计时可以与 cron 非常相似。
  • 谢谢。在这里得到答案stackoverflow.com/questions/19051350/…
  • @LeeMeador 很抱歉,但 cronmaker.com 说所有这些表达式都是无效的。我尝试使用 Cronmaker 生成下一次运行日期。你能解释一下吗?
  • @BhushanFirake cronmaker.com 使用 Quartz cron 格式。显然它不允许同时使用破折号和斜线。
猜你喜欢
  • 1970-01-01
  • 2012-05-03
  • 2011-05-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-16
  • 1970-01-01
  • 2017-05-06
相关资源
最近更新 更多