每月工作结束时的表情:骆驼,石英

时间:2020-10-16 10:56:25

标签: cron apache-camel quartz

我试图在每个月底完成工作,但是每次添加cron表达式时都会出错:

from(“ timer:// ratingTimer?cron = 0 + 52 + 12 + + + ”) 这是我正在尝试在特定时间工作。 引起原因:org.apache.camel.ResolveEndpointFailedException:无法解析端点:timer:// ratingTimer?cron = 0 + 52 + 12 +%3F + + *,原因是:有1个参数不能在端点上设置。检查uri是否正确拼写了参数,并且它们是端点的属性。未知参数= [{cron = 0 52 12? * *}]

1 个答案:

答案 0 :(得分:0)

我们将在每个月的28、28、29和31日安排cron。现在查找今天是否是该月的最后一天。要找到它,请检查第二天是否为第二天01日,然后仅执行任何命令。

以下命令将返回第二天的日期。

日期+%d -d明天

现在检查明天是否是01。

[“ $(日期+%d -d明天)” =“ 01”] &&回声“ True”

如果第二天是01,则上述命令将在屏幕上显示“ True”。在这里,您可以在crontab中使用上述脚本,并使用命令更改echo。

59 23 28-31 * * [“ $(日期+%d -d明天)” =“ 01”] && /root/script.sh

在下面的网址中查看更多信息。

CRON job to run on the last day of the month

AND

quartz scheduler: run on last day of the month

from(“ cron:// ratingTimer?schedule = 0 + 0 + 3 + L + * +?”)