cron表示式用法整理

2021-09-23 22:37:47 字數 2115 閱讀 8262

一、cron表示式的結構

cron表示式是乙個字串,字串以5或6個空格隔開,分為6或7個域,每乙個域代表乙個含義,cron有如下兩種語法格式:

1. seconds minutes hours dayofmonth month dayofweek year

2. seconds minutes hours dayofmonth month dayofweek

二、cron表示式的格式

cron表示式的格式:秒 分 時 日 月 周 年(可選)

1. seconds (秒) :可以用數字0-59 表示,

2. minutes (分) :可以用數字0-59 表示,

3. hours (時) :可以用數字0-23表示,

4. day-of-month (日) :可以用數字1-31 中的任一乙個值,但要注意一些特別的月份

5. month (月) :可以用1-12 或用字串 「jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov and dec」 表示

6. day-of-week (周) :可以用數字1-7表示(1 = 星期日)或用字元口串「sun, mon, tue, wed, thu, fri and sat」表示

7. year :年--可預設,1970-2099

三、cron表示式各部分可用的特殊字元

1. seconds (秒) , - * /

2. minutes (分) , - * /

3. hours (時) , - * /

4. day-of-month (日) , - * / ? l c w

5. month (月) , - * /

6. day-of-week (周) , - * / ? l c #

7. year , - * /

「*」字元:表示匹配該域的任意值。假如在minutes域使用*, 即表示每分鐘都會觸發事件。

「?」字元:表示不確定的值,表示每月的某一天,或第周的某一天

「,」字元:表示列出列舉值(列表值)。例如:在minutes域使用5,20,則意味著在5和20分每分鐘觸發一次。

「-」字元:表示範圍值。例如在minutes域使用5-20,表示從5分到20分鐘每分鐘觸發一次

「/」字元:表示起始時間開始觸發,然後每隔固定時間觸發一次。例如在minutes域使用5/20,則意味著第5分鐘觸發第一次,而25,45等分別觸發一次。*/y,它等同於0/y

「l」字元:用在日表示乙個月中的最後一天,用在周表示該月最後乙個星期x, 「6l」表示「每月的最後乙個星期五」

「w」字元:表示有效工作日(周一到周五),只能出現在dayofmonth域,系統將在離指定日期的最近的有效工作日觸發事件,另外一點,w的最近尋找不會跨過月份。"15w"--「到本月15日最近的工作日」

「lw」字元:這兩個字元可以連用,表示在某個月最後乙個工作日,即最後乙個星期五。

「#」字元:表示該月第幾個星期x。6#3表示該月第3個周五

「c」字元:該字元只在日期和星期欄位中使用,代表「calendar」的意思。它的意思是計畫所關聯的日期,如果日期沒有被關聯,則相當於日曆中所有日期。例如5c在日期欄位中就相當於日曆5日以後的第一天。1c在星期欄位中相當於星期日後的第一天。

注:cron表示式對特殊字元的大小寫不敏感,對代表星期的縮寫英文大小寫也不敏感。

四、cron表示式範例:

1. 每隔5秒執行一次:*/5 * * * * ?

2. 每隔1分鐘執行一次:0 */1 * * * ?

3. 每天23點執行一次:0 0 23 * * ?

4. 每天凌晨1點執行一次:0 0 1 * * ?

5. 每月1號凌晨1點執行一次:0 0 1 1 * ?

6. 每月最後一天23點執行一次:0 0 23 l * ?

7. 每週星期天凌晨1點實行一次:0 0 1 ? * l

8. 每星期三下午12點執行:0 0 12 ? * wed

9. 在26分、29分、33分執行一次:0 26,29,33 * * * ?

10. 每天的0點、13點、18點、21點都執行一次:0 0 0,13,18,21 * * ?

Cron表示式的詳細用法

字段允許值 允許的特殊字元 秒0 59 分0 59 小時0 23 日期1 31 l w c 月份1 12 或者 jan dec 星期1 7 或者 sun sat l c 年 可為空 留空,1970 2099 秒允許值範圍 0 59 不允許為空值,若值不合法,排程器將丟擲schedulerexcept...

Cron表示式詳解 job表示式

cron表示式的詳細用法 字段 允許值 允許的特殊字元 秒 0 59 分 0 59 小時 0 23 日期 1 31 l w c 月份 1 12 或者 jan dec 星期 1 7 或者 sun sat l c 年 可選 留空,1970 2099 例子 0 5 每5秒執行一次 字元被用來指定所有的值。...

Cron表示式示例 表示式 說明

0 0 12 每天12點執行 0 15 10 每天10 15執行 0 15 10 2011 2011年的每天10 15執行 0 14 每天14點到15點之間每分鐘執行一次,開始於14 00,結束於14 59。0 0 5 14 每天14點到15點每5分鐘執行一次,開始於14 00,結束於14 55。0...