Cron explainer

When does it run?

Linux crontab syntax: minute, hour, day of month, month, day of week. Calculated in your browser.

At 06:00, on day 1 of the month

0Minute
6Hour
1Day of month
*Month
*Day of week

Next runs (Europe/Vienna)

  1. Sun 2026-11-01 06:00
  2. Tue 2026-12-01 06:00
  3. Fri 2027-01-01 06:00
  4. Mon 2027-02-01 06:00
  5. Mon 2027-03-01 06:00
  6. Thu 2027-04-01 06:00
  7. Sat 2027-05-01 06:00
  8. Tue 2027-06-01 06:00
  9. Thu 2027-07-01 06:00
  10. Sun 2027-08-01 06:00

Times skipped by a daylight-saving change are not listed (cronie runs them right after the switch).

Details

Minute0
Hour6
Day of month1
Month*every
Day of week*every

systemd timer

OnCalendar=*-*-01 06:00:00

Syntax

┌───────────── minute        0–59
│ ┌─────────── hour          0–23
│ │ ┌───────── day of month  1–31
│ │ │ ┌─────── month         1–12 or JAN–DEC
│ │ │ │ ┌───── day of week   0–7 or SUN–SAT (0 and 7 = Sunday)
│ │ │ │ │
* * * * *  command
*
every value
1,15
list
1-5
range
*/15
every 15th value (0, 15, 30, 45)
8-17/2
every 2nd value within a range
@daily
@hourly, @daily, @weekly, @monthly, @yearly, @reboot

If both day of month and day of week are restricted, cron runs when either matches. Cron uses the server's time zone (or CRON_TZ= in the crontab).

Same in the terminal

$ curl tools.otw.solutions/cron/0_6_1_*_*

Or with spaces: curl "tools.otw.solutions/cron?e=0+3+*+*+1-5" · JSON: add ?format=json