User Tools

Site Tools


trigger:Cron

**This is an old revision of the document!**

The Cron trigger lets you execute a macro periodically while you are logged in.

The Cron format lets you specify when a trigger will fire based on the time of day and and day of month and week.

The times are set using 5 (or 6) space separated fields, representing the

  • minute (0-59)
  • hour (0-23)
  • day of month (1-31)
  • month (1-12)
  • day of week (0-6) (Sunday to Saturday)
  • Optional year (2000-2099)

Each field can be a single number, or it can be a range (eg “3-7”) or a set of numbers or ranges separated by commas (eg “3,5-7,9”). Alternatively, the field can be “*” which matches all values. You can also add “/” and a number after a range to match every N'th value (eg “0-25/5” will match every five minutes in the first half of the each hour).

For the Day of Week and Month fields, you can use the first three letters of the English name (eg “Jan” for January (1), or “Sun” for Sunday (0)).

If the field starts with a minus sign (-), it matches from the end of the range (eg -1 in day of the month means the last day of the month).

The trigger will match when all fields match the current time (as each minute ticks over). Exception: if either day of month or day of week is “” and the other isn't, then the trigger will match only the non- field, otherwise the trigger will match when either field matches.

If you start the day of the month field with a “+”, then the trigger will match only if both the day of the week and day of the month field matches. This allows you to match the last Friday of the month using “-1-7” for the day of the month, and “+Fri” for the day of the week.

Alternatively, the entire field can be one of:

  • @yearly or annually — same at 0 0 1 1 * (midnight at the start of January 1st each year).
  • @monthly — same at 0 0 1 * * (midnight at the start of the 1st of each month).
  • @weekly — same at 0 0 * * 0 (midnight at the start of the each Sunday).
  • @daily or @midnight — same at 0 0 * * * (midnight at the start of the each day).
  • @daily — same at 0 0 * * * (midnight at the start of the each day).
  • @noon — same at 0 12 * * * (noon in the middle of the each day).
  • @hourly — same at 0 * * * * (at the start of each hour).

Examples

  • 1 0 * * * — triggers at one minute past midnight each day.
  • 45 23 * * 6 — triggers at 23:45 (15 minutes before midnight) near the end of each Saturday.
  • 0 12 * * Mon — triggers at noon each Monday.
  • 0 18 * * Fri — triggers at 6pm each Friday.
  • 0 9,12,18 * * * — triggers at 9am, 12am and 3pm each day.
  • * * * * 1-5 — triggers at every minute on workdays.
  • */15 * * * * — triggers at every quarter hour.
  • 0 18-23,0-8 * * * — triggers at every hour outside office hours.
  • 0 12 1 Apr * — triggers at noon on April 1st.
  • 0 12 15 * * — triggers at noon the 15th of each month.
  • 0 12 15 * Mon — triggers at noon each Monday and the 15th of each month.
  • 0 12 15 * +Mon — triggers at noon each 15th of each month if it is a Monday.
  • 0-59/5 * * * * — triggers every five minutes (at :00, :05, :10, etc).
  • 3-59/5 * * * * — triggers every five minutes (at :03, :08, :13, etc).

See Also

Triggers

trigger/Cron.1504512756.txt.gz · Last modified: 2017/09/04 04:12 by peternlewis