如何编写 cron 表达式以使作业不应仅在每月的最后一个星期一运行

如何编写 cron 表达式以使作业不应仅在每月的最后一个星期一运行

我的要求 -

  • 我将使用 cron 表达式来安排工作。
  • 该作业已安排在每月每周一早上 00:05 运行
  • 它应该在每月的最后一个星期一运行。

示例:考虑本月我安排的工作在 3 日、10 日、17 日、24 日。我期望 24 日的工作不仅应在 3 日、10 日、17 日运行,整个月都应如此。

答案1

如果您希望它在特定的一天(星期一)运行,那么您需要将其设置为星期几。

* * * * *

文件中显示了这一点/etc/crontab,但为了清楚起见,从左到右的星号代表:

分钟 小时 月份 日 月 星期几

目前,您已为这些日期设置了日期,但显然您不希望这样,因为这些日期并不总是星期一。要获得所需的日期,请使用以下命令:

5 0 * * MON user command

这样就会在每个星期一的午夜后 5 分钟或(12:05AM 或 00:05AM)运行该作业,无论星期一是哪一天。

相关内容