CronExpression表示式語法總結

2021-09-02 10:44:14 字數 2098 閱讀 1306

乙個cron表示式由6或7個時間元素組成。它們之間用空格分隔,依次為:[秒] [分] [小時] [日] [月] [星期] [年]

序號說明

是否必填

允許填寫的值

允許的符號1秒

是0-59

, - * /2分

是0-59

, - * /3小時

是0-23

, - * /4日

是1-31

, - * ? / l w5月

是1-12 or jan-dec

, - * /6星期

是1-7 or sun-sat

, - * ? / l #7年

否1970-2099

, - * /

其中每個元素值可以是乙個確定值(6),乙個連續區間(9-12),乙個間隔時間(0/5),乙個列表(1,3,5)或萬用字元。

「-」表示可選值範圍,如在「小時」上設定「10-12」,表示10點、11點和12點觸發。

「,」表示可選的多個值,例如在「星期」上設定「mon,wed,fri」,表示周一,週三和周五觸發。

「/」用於遞增觸發,如在「秒」上面設定「5/15」表示從第5秒開始,每15秒觸發一次(5,20,35,50);在「日」上設定「1/3」表示每月1號開始,每三天觸發一次。

*表示所有值. 如在「分」上設定「*」,表示每分鐘觸發。

「?」字元僅出現在「日」和「星期」兩個元素上,表示不指定值。當這兩個元素之一被指定了值以後,為了避免衝突,需要將另乙個元素的值設為「?」

「月」和「星期」元素上若使用英文本母是不區分大小寫的,即mon與mon相同

「l」 字元僅出現在「日」和「星期」兩個元素上,它是單詞「last」的縮寫。

「l」在「日」元素上出現,表示每個月的最後一天;在「星期」元素上出現,表示每個月最後乙個星期六。

如果在「l」前有具體的內容,它就具有其他的含義了。例如:「6l」在「日」上出現,表示每月的倒數第6天;「5l」在「星期」上出現,表示每月的最後乙個星期四

注意:在使用「l」引數時,不要指定列表或範圍,因為這會導致問題

w表示離指定日期的最近那個工作日(周一至周五).

例如在日字段上設定「15w」,表示離每月15號最近的那個工作日觸發。

如果15號正好是週六,則找最近的周五(14號)觸發;如果15號是週未,則找最近的下周一(16號)觸發;如果15號正好在工作日(周一至周五),則就在該天觸發。

如果指定格式為「1w」,它則表示每月1號往後最近的工作日觸發。

如果1號正是週六,則將在3號下周一觸發。(注,「w」前只能設定具體的數字,不允許區間「-」).

常用示例:

0 0 12 * * ? 每天12點觸發

0 15 10 ? * * 每天10點15分觸發

0 15 10 * * ? 每天10點15分觸發

0 15 10 * * ? * 每天10點15分觸發

0 15 10 * * ? 2005 2023年每天10點15分觸發

0 * 14 * * ? 每天14點到14點59分之間,每分鐘觸發一次

0 0/5 14 * * ? 每天14點到14點59分之間,每5分鐘觸發一次(從14點開始觸發)

0 0/5 14,18 * * ? 每天14點到14點59分及18點到18點59分,每5分鐘觸發一次(分別從14點、18點開始觸發)

0 0-5 14 * * ? 每天14點到14點05分之間,每分鐘觸發

0 10,44 14 ? 3 wed 3月份每週三14點10分和14點44分觸發

0 15 10 ? * mon-fri 周一到周五每天10點15分觸發

0 15 10 15 * ? 每月15號10點15分觸發

0 15 10 l * ? 每月最後一天的10點15分觸發

0 15 10 ? * 6l 每月最後乙個周五的10點15分觸發

0 15 10 ? * 6l 2002-2005 從2023年到2023年每月乙個周五的10點15分觸發

0 15 10 ? * 6#3 每月第三個周五的10點15分觸發

0 0 12 1/5 * ? 每月1號的12點開始觸發,每隔5天觸發一次

cronExpression配置說明

cronexpression配置說明 字段 允許值 允許的特殊字元 秒 0 59 分 0 59 小時 0 23 日期 1 31 l w c 月份 1 12 或者 jan dec 星期 1 7 或者 sun sat l c 年 可選 留空,1970 2099 表示式 意義 0 0 12 每天中午12點...

關於cronExpression的介紹

在spring配置檔案中看到一段有關自動傳送郵件的配置,看到 0 0 1 0 23 不懂,查了下,才知道是這麼回事啊,呵呵 現在貼出來和大家共享!乙個cron 表示式是乙個由六至七個字段組成由空格分隔的字串,其中6個字段是必須的而乙個是可選的,如下 欄位名允許的值 允許的特殊字元 秒 0 59 分 ...

任務排程 cronExpression配置介紹

說明 以下資料從網際網路蒐集 乙個cron 表示式是乙個由六至七個字段組成由空格分隔的字串,其中6個字段是必須的而乙個是可選的,如下 b 欄位名 允許的值 允許的特殊字元 b 秒 0 59 分 0 59 小時 0 23 日 1 31 l w c 月 1 12 or jan dec 周 1 7 or ...