Cron 運算式間隔

CRON 運算式可用來配置特定的觸發執行個體。大部分用於排程的重複性觸發。這是一個包含 6 或 7 個欄位的字串,這些欄位分別代表個別的排程值。這些欄位會以空格分隔,且其中包含任何允許值的各種組合。

CRON 運算式有可能很簡單,像是:* * * * ? * 或更複雜,如下所示:0/5 14,18,3-39,52 * ? JAN,MAR,SEP MON-FRI 2012-2020

您可在 CRON 運算式中使用的值清單:

名稱

需求

允許的特殊字元

0-59

, - * / R

分鐘

0-59

, - * / R

小時

0-23

, - * / R

月中的日

1-31

, - * / ? L W

1-12 或 JAN-DEC

, - */

星期

0-6 或 SUN-SAT

, - / ? L #

1970-2099

, - * /

CRON 運算式語法如下:

 

┌────────── 秒 (0 - 59)

│ ┌────────── 分鐘 (0 - 59)

│ │ ┌────────── 小時 (0 - 23)

│ │ │ ┌────────── 月份日期 (1 - 31)

│ │ │ │ ┌────────── 月 (1 - 12 或 JAN-DEC)

│  │  │  │  │  ┌────────── 星期 (0 - 6 或 SUN-SAT)(例如,0 與 SUN 相同)

│ │ │ │ │ │ ┌────────── 年

│  │  │  │  │  │  │

*  *  *  *  *  ?

0 0 0 表示午夜 (秒、分、小時)。

在某個值已定義於其他欄位 (月份日期或星期幾) 而無法定義時,可以使用 ?。

* 表示間隔 (秒、分、小時、月份日期、月、星期幾、年)。

SUN 表示在星期日。

note

注意

月和星期幾的名稱不區分大小寫。例如,MON 等同於 mon,或 JAN 等同於 jan。

特殊字元

逗號 (,)

逗號可用來分隔清單中的項目。例如,在第 6 個欄位 (星期幾) 中使用「MON,WED,FRI」,表示星期日、星期三和星期五。

連字號 (-)

定義範圍。例如,2012-2020 表示 2012 和 2020 之間的每一年 (包含這兩年)。

萬用字元 (*)

用來選取欄位內所有可能的值。例如,分鐘欄位中的 * 表示每分鐘。萬用字元無法用於「星期幾」欄位中。

問號 (?)

選擇特定日期時,您可以指定月份日期或星期幾。您無法同時指定這兩者。如果指定月份日期,則必須使用 ? 表示星期幾,反之亦然。例如,若要讓觸發在特定的月份日期 (例如 10 號) 引發,但不考量當天是星期幾,請在月份日期欄位中填入 10,並在「星期幾」欄位中填入 ?。

雜湊 (#)

用來指定月中的「第 n 天」。例如,若「星期幾」欄位中的值為 4#3,則表示月中的第三個星期四 (day 4 = 星期四,#3 = 月中的第 3 個星期四)。如果指定 #5,但當月並沒有第 5 個給定的「星期幾」,則觸發在那個月將不會引發。

斜線 (/)

說明範圍的增量。例如,第 2 個欄位 (分鐘) 若為 3-59/15,則表示該小時的第三分鐘及其後的每 15 分鐘。

最後一個 (L)

使用於「星期幾」欄位時,將可讓您指定如給定月份的最後一個星期五 (5L) 這類的架構。在月份日期欄位中,則會指定月中的最後一天。例如,一月的 31 日,二月的 28 日 (非閏年)。

平日 (W)

W 字元可用於月份日期欄位。此字元可用來指定最接近給定日期的平日 (星期一-星期五)。例如,如果將月份日期欄位的值指定為 15W,則表示最接近當月 15 日的平日。因此,如果 15 日是星期六,則觸發會在 14 日星期五引發。如果 15 日是星期日,則觸發會在 16 日星期一引發。但若將月份日期欄位的值指定為 1W,而 1 日是星期六,則觸發會在 3 日星期一引發,因為它並不會跳到一個月的日期界限外。

note

注意

L 與 W 字元也可在月份日期欄位中結合而形成 LW,這會轉譯為月中的最後一個平日。

隨機 (R)

R 是特殊的 ERA CRON 運算式字元,可讓您指定隨機的時間點。例如,R 0 0 * * ? * 觸發會在每天的 00:00 引發,但秒數會隨機指定 (0-59)。

important

重要

建議您使用隨機的時間點,以防止所有的 ESET Management 代理程式全都在相同時間連線至您的 ESMC 伺服器。

說明某些 CRON 運算式變異的實際範例:

CRON 運算式

意義

0 0 12 * * ? *

在每天中午 12 點引發。

R 0 0 * * ? *

在每天的 00:00 引發,但秒數隨機指定 (0-59)。

R R R 15W * ? *

在每個月 15 日的隨機時間 (秒、分、小時) 引發。如果 15 日是星期六,則觸發會在 14 日星期五引發。如果 15 日是星期日,則觸發會在 16 日星期一引發。

0 15 10 * * ? 2016

在 2016 年的每天上午 10:15 引發。

0 * 14 * * ? *

在每天的下午 2 點到下午 2:59 之間每分鐘引發一次。

0 0/5 14 * * ? *

在每天的下午 2 點到下午 2:55 之間每 5 分鐘引發一次。

0 0/5 14,18 * * ? *

在每天的下午 2 點到下午 2:55 之間每 5 分鐘引發一次,並在每天的下午 6 點到下午 6:55 之間每 5 分鐘引發一次。

0 0-5 14 * * ? *

在每天的下午 2 點到下午 2:59 之間每分鐘引發一次。

0 10,44 14 ? 3 WED *

在三月的每個星期三上午 2:10 和下午 2:44 引發。

0 15 10 ? * MON-FRI *

在每個平日 (星期一、星期二、星期三、星期四和星期五) 的上午 10:15 引發。

0 15 10 15 * ? *

在每個月 15 日的上午 10:15 引發。

0 15 10 ? * 5L *

在每個月最後一個星期五的上午 10:15 引發。

0 15 10 ? * 5L 2016-2020

在 2016 到 2020 年 (包含這兩年) 每個月的最後一個星期五的上午 10:15 引發。

0 15 10 ? * 5#3 *

在每個月第三個星期五的上午 10:15 引發。

0 0 * * * ? *

在每天的每個小時引發。