如何為作業編寫 cron 表達式,該作業不應僅在該月的最後一個星期一運行

如何為作業編寫 cron 表達式,該作業不應僅在該月的最後一個星期一運行

我的要求——

  • 我將使用 cron 表達式來安排工作。
  • 該作業已規劃並在該月的每週一早上 00:05 運行
  • 它應該在該月的最後一個星期一運行。

例:想想這個月我安排了 3 號、10 號、17 號、24 號的工作。我預計第 24 份工作不應只在 3 日、10 日、17 日運行,整個月都類似。

答案1

如果您希望它在特定的一天(星期一)運行,那麼您需要將其設定為一周中的某一天。

* * * * *

這顯示在文件中/etc/crontab,但需要明確的是,星號從左到右表示:

分鐘 小時 月份中的某一天 月份中的星期幾

現在,您已經為這些日期設定了它,但顯然您不希望這樣,因為這些日期並不總是星期一。要獲得您想要的,請使用以下命令:

5 0 * * MON user command

這將在每週一午夜後 5 分鐘或(上午 12:05 或上午 00:05)運行該作業,無論星期一是哪一天。

相關內容