Cron Expression Example1

  • Last update:  2024-03-27
  • Overview

    Application Scenario

    When the update frequency you want to set is complicated and can not be achieved by Execute Repeatedly or Set Detailed Frequency, we can use a Cron expression.

    This document shows you how to set a Cron expression.

    Function Description

    The Cron expression is described in the form of a string. The structure of the Cron expression typically consists of six or seven fields, with each field representing a time range and separated by five or six spaces. The Cron expression can be written as the following two syntax formats.

    Seconds Minutes Hours DayofMonth Month DayofWeek Year

    Seconds Minutes Hours DayofMonth Month DayofWeek

    Cron Expression Rules

    Each field can be described as the following characters.

    Field

    Allowed Value

    Allowed Special Character

     Seconds

     0 to 59 (integers)

     , - * and / (four characters)

     Minutes

     0 to 59 (integers)

     , - * and / (four characters)

     Hours

     0 to 23 (integers)

     , - * and / (four characters)

     DayofMonth

     0 to 31 (integers, the number of which depends on the specific month)

     , - * ? / L W and C (eight characters)

     Month

     1 to 12 (integers) or JAN to DEC (abbreviation of the month name)

     , - * and / (four characters)

     DayofWeek

     1 to 7 (integers) or SUN to SAT (1=SUN, 2=MON, ...)

     , - * ? L C and # (eight characters)

     Year

     1970 to 2099

    , - * and / (four characters)

    In addition to numbers, each field can be described as special characters, and the meanings of these special characters are as follows.

    Character

    Definition

    *

    Indicates any values that match the field. If Minutes is described as *, then the field means that the event will be

    triggered per minute.

    ?

    Only appears in DayofMonth and DayofWeek. This character also indicates any values that match the two fields, but

    in fact it does not, because DayofMonth and DayofWeek will affect each other. For example, if you want to 

    trigger scheduling on the 20th of every month, no matter what day of the week the 20th is, you only can write the 

    syntax as: 13 13 15 20 * ?, and the last character can only be ?, rather than *. Because if you use * to describe 

    DayofWeek, the problem is that there is a contradiction between "the 20th of every month" and "any day of the 

    week".

    -

    Indicates the range. For example, If Minutes is described as 5 - 20, and then the field means the event will be triggered per minute from 5 to 20 minutes.

    /

    Indicates that the event will be triggered at the start time and then be triggered at each fixed interval. For example, If Minutes is described as 5/20, then the field means that the event will start to be triggered at five minutes and 

    continued to be triggered every 20 minutes. (The event will be triggered at 25 minutes, 45 minutes and so on.)

    ,

    Indicates to list enumeration values. For example, If Minutes is described as 5,20, then the field means that the event will be triggered at 5 and 20 minutes respectively.

    L

    Represents "Last" and only appears in DayofMonth and DayofWeek. However, this character has different meanings 

    in the two fields. L represents the last day of a month in DayofMonth, for example the 31st of January, or the 28th of February in non-leap year. If DayofWeek is described as L, then the field means Saturday, tantamount to 7. However, if there is a numerical value X before L, the character takes on a different meaning. For example, 6L in DayofMonth means the sixth-to-last day of the month, and FRIL in DayofWeek means the last Friday of the month.

    W

    Modifies the preceding date and only appears in DayofMonth. This character means the nearest weekday 

    (Monday to Friday) to that date. For example, 15W represents the nearest weekday (Monday to Friday) to the 

    15th of the month. If the 15th of that month falls on a Saturday, then the character represents the 14th (Friday). If the 15th falls on a Sunday, then it represents the 16th (Monday). And if the 15th falls on a Tuesday, then it represents the 15th (Tuesday). However, the associated representing date cannot cross months. For example, if you specify 1W 

    and the 1st falls on a Saturday, then the field will represent the 3rd (Monday) of the current month, not the last day of the previous month. The W string can only specify a single date, not a date range.

    LW

    Can appear in DayofMonth in combination. This character means the last workday of the month (Monday to Friday).

    C

    Means "Calendar" and only appears in DayofMonth and DayofWeek. This character means to schedule the 

    associated date. If the date is not associated, then the character represents all dates in the calendar. For 

    example, 5C in DayofMonth is equivalent to the first day after five days on the calendar. 1C in DayofWeek is 

    equivalent to the first day after Sunday.

    #

    Indicates a certain workday of the month (Monday to Friday) and only appears in DayofWeek. For example, 6#3 

    represents the third Friday of the month (6 represents Friday, #3 represents the third), while 4#5 represents the fifth Wednesday of the month. If there is no fifth Wednesday in the month, then the field is ignored and can not be 

    triggered.

    Example

    For example, you want the folder of Department Data to be updated every Monday to Friday at 8:00.

    1. Choose Data Center, select Public Data, select the folder of Department Data and select Folder Updateas shown in the following figure.

    0235de3c62569c16edf172463617226.png

    2. Click Schedule Setting.

    4b2d56b7da1bc5d2fb0df868e68fbd7.png

    3. Set Execution Frequency to Set Expression on the Scheduled Update setting page, and enter the corresponding Cron expression.

    This Cron expression means that the update is executed every Monday to Friday at 8:00.

    43d57fa8c40b6dbce86a58796e2370e.png

    4. Click OK, and now the setting is successful.

    The Cron expression can be further expanded here.

    Expression

    Definition

    0 0 8 ? * 2-6

    Means being executed every Monday to Friday at 8:00.

    0 0/5 8-9 ? * 2-6

    Means being executed every five   minutes between 8:00 and 9:00, from Monday to Friday.

    0 0 8,17 ? * 2-6

    Means being executed at 8:00 and 17:00 from Monday to Friday.

    Reference of More Examples

    Common Scenario

    0 0 8,13 * * ?

    Means being executed at 8:00 and 13:00 every day.

    0 0 8-18 ? * MON-FRI

    Means being executed at each hour from 8:00 to 18:00 (during regular working hours), from Monday to Friday.

    0 0 12 ? * 2#1

    Means being executed at 12:00 on the first Monday of every month.

    0 * 14 * * ?

    Means starting to be executed at 14:00 and continued to be executed per minute from 14:00 to 14:59 every day.

    0 0/5 14 * * ?

    Means starting to be executed at 14:00 and continued to be executed every five minutes from 14:00 to 14:55 every day.

    0 55/10 14,18 * * ?

    Means being executed at 14:55 and 18:55 every day.

    0 10,44 14 ? 3 WED

    Means being executed every Wednesday in March at 14:10 and 14:44.

    0 15 10 ? * MON-FRI

    Means being executed at 10:15 every Monday, Tuesday, Wednesday, Thursday, and Friday.

    0 15 10 15 * ?

    Means being executed at 10:15 on the 15th of every month.

    0 15 10 L * ?

    Means being executed at 10:15 on the last day of every month.

    0 15 10 ? * 6L

    Means being executed at 10:15 on the last Friday of every month.

    0 15 10 ? * 6L 2002-2005

    Means being executed at 10:15 on the last Friday of every month from 2002 to 2005.

    0 15 10 ? * 6#3

    Means being executed at 10:15 on the third Friday of every month.

    0 0 0 L-2 * ? *

    Means being executed on the second-to-last day of every month.

    Simple Scenario

    */5 * * * * ?

    Means being executed every five minutes.

    0 */1 * * * ?

    Means being executed every one minute.

    0 0 */1 * * ?

    Means being executed every one hour.

    0 0 12 * * ?

    Means being executed at 12:00 every day.

    0 0 0,13,18,21 * * ?

    Means being executed at 00:00, 13:00 and 21:00 every day.

    0 0 0-8 * * ?

    Means being executed at each hour from 00:00 to 8:00 every day.

    0 15 10 ? * *

    Means being executed at 10:15 every morning.

    0 15 10 * * ?

    Means being executed at 10:15 every morning.

    0 15 10 * * ? *

    Means being executed at 10:15 every morning.

    0 15 10 * * ? 2024

    Means being executed at 10:15 every morning in 2024.


    Attachment List


    Theme: 暂存
    前の記事
    次の記事
    • いいね
    • 良くない
    • 閲覧しただけ

    フィードバック

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    9s后关闭

    反馈已提交

    网络繁忙