Cron表示式小結

2021-09-01 08:56:44 字數 1409 閱讀 8691

cron表示式包含6個必填欄位和乙個可選字段,中間用空格分隔開。字段描述如下

字段     允許值                                允許的特殊字元

秒        0-59                                  , - * /

分        0-59                                  , - * /

小時     0-23                                   , - * /

日期     1-31                                   , - * ? / l w

月份     1-12 或者 jan-dec              , - * /

星期     1-7 或者 sun-sat                , - * ? / l  #

年(可選) 留空, 1970-2099            , - * /

「*」用來匹配所有的值,例如,「*」在分這個字段表示「每一分鐘」,

「?」用來匹配日期欄位和星期字段,通常用於指定不包含特殊的值,

「-」用來匹配連續的值,例如,「10-12」在小時欄位中表示,10,11,12小時,

「,」用來匹配額外的值,例如,在星期這個欄位中「mon,wed,fri」 表示星期一,三,五,

「/」用來表示特定的增量,例如,在秒這個欄位中「0/15」表示,0,15,30和45。「5/15」表示5,20,35,和50.當「*」出現在「/」時,等價於0/?,0是這個值的起點。 

「l」可用在日期和星期字段當中,是單詞「last」的簡寫,但是,他們在不同的字段中也有不同的意思,例如,在日期這個欄位中,「l」表示月中的最後一天,一月的31號,平年2月的28號。如果是單獨用在星期這個欄位中,僅僅簡單的表示「7」或者「sat」,如果用在其他的值後面,則又有其他的意思,例如,在星期欄位中,「6l」表示乙個月的最後乙個星期五。也可以表示一組值,例如,「l-3」表示每乙個月的最後三天,當用「l」這個選項時,最好別指定特殊的一組值,或是範圍。

「w」可用在日期欄位中,被用來表示給定日期的最近工作日,例如「15w」表示,表示15號前後最近的工作日,注意是當前月,例如「1w」,假設1號是星期6,則表示當月的3日,而不是前一月的最後一天。

「l」和「w」也可以結合起來用在日期欄位中,「lw」就表示乙個月的最後乙個工作日,

「#」可以用在星期欄位中,例如「6#3」乙個月中的第三個星期五,「2#1」等價於乙個月當中的第乙個星期一,「4#5」等價於月中的第四個星期三,注意「#」只能用於周字段中,如果是單獨寫「#5」,將不會觸發,在周字段中,「#」只能用一次,「3#1,6#3」是不合法的。  周字段中的的合法字元是不區分大小寫的。(sun,sun)

ps:掌握了上面的用法,一般的場景應該夠了!

Cron表示式小結

corn表示式是高效表達定時任務排程的方式 1.基本格式 corn從左到右 用空格隔開 秒 分 小時 月份中的日期 月份 星期中的日期 年份 2.符號含義 1 表示匹配該域的任意值。2 只能用在dayofmonth和dayofweek兩個域。它也匹配域的任意值,但實際不會。因為dayofmonth和...

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...