0

我只是想创建一个将在“N”天后执行作业的 cron 表达式。其中 N 可以是大于零的任何数字。

因此,如果数字介于 1 和 30 之间,则可以。例如,在每 25 天上午 11 点执行作业的 Cron 表达式将是:

0 0 11 1/25 * ?  //'?' can only be specfied for Day-of-Month or Day-of-Week.

但如果用户超过此限制,则意味着我们将不得不在“M”个月和“D”天后执行作业。

我无法理解如何同时指定日期和月份。谁能让我理解如何为这种情况创建 cron 表达式。您可以假设工作在每 '65' 天后执行

谢谢你的时间。

4

1 回答 1

2

简短的回答是 cron 表达式不支持您想要做的事情。您需要预处理用户的请求并将其转换为适当的 cron 表达式,或者实现您自己的计时例程,这可以在幕后使用 cron 和一些额外的逻辑。另一个建议是对用户 API 设置一些限制,只允许用户输入对 cron 友好的时间,例如每月、每周、每 3 个月等。

于 2014-12-30T21:05:08.223 回答