【问题标题】:Cron expression to run after 30 minutes past hour [closed]Cron 表达式在过去 30 分钟后运行 [关闭]
【发布时间】:2013-08-30 18:47:01
【问题描述】:

我想使用 Quartz 安排一个作业在整点后 30 分钟运行。例如我希望作业在 00:30、1:30、2:30 等运行。

你们能帮我获得正确的 cron 表达式吗?

【问题讨论】:

  • 自己解决这个问题所表现出的缺乏努力令人印象深刻。
  • @MattBall dude man crontab 需要输入很多字符。使用stackoverflow要容易得多。
  • 伙计们,我正在尝试其他一些选项,并坚持认为石英调度程序 cron 表达式是 HH MM .. 而实际的表达式骨架首先具有秒数 - SS MM HH .. ...我花了一段时间才解决这个问题,但是您的有趣的 cmets 不受欢迎。我为你们感到难过。

标签: java spring quartz-scheduler quartz


【解决方案1】:

够简单

30 * * * *

每个小时的每 30 分钟,每月的每一天,每月,每周的每一天。来自维基百科

# *    *    *    *    *  [command to execute]
# ┬    ┬    ┬    ┬    ┬
# │    │    │    │    │
# │    │    │    │    │
# │    │    │    │    └───── day of week (0 - 6) (0 to 6 are Sunday to Saturday, or use names)
# │    │    │    └────────── month (1 - 12)
# │    │    └─────────────── day of month (1 - 31)
# │    └──────────────────── hour (0 - 23)
# └───────────────────────── min (0 - 59)

对于quartz,cron 表达式引入了更多字段(共7 个),第一个是seconds,最后一个是years(但可选)。你可以看到那些here

你需要

* 30 * * * * [*]

【讨论】:

  • 每个月的每一天已经包含了一周中的每一天。
  • @HunterMcMillen 是的,我只是在解释表达式中的每个位置。
  • @SotiriosDelimanolis - 我试过你的答案,工作每 30 秒运行一次。所以我将其更正为 - 0 30 * * * ?它按预期运行。谢谢你帮助我。
  • @Sirish 啊,是的,石英 cron 表达式似乎与正常表达式不同。有7个职位,第一个是seconds
  • 虽然问题很糟糕而且很差 - 在我自己研究方法时,它仍然会出现在搜索引擎中 - 所以仍然是一个很好的答案,它准确地告诉了我我需要什么
猜你喜欢
  • 2023-04-01
  • 2016-10-08
  • 1970-01-01
  • 2012-01-23
  • 2021-09-03
  • 2016-12-25
  • 1970-01-01
  • 2018-06-04
  • 2023-03-04
相关资源
最近更新 更多