---
title: "Cron Expressions Cheatsheet | FindUtils"
description: "5-field crontab syntax, nicknames, common schedules, and systemd OnCalendar traps"
url: https://findutils.com/cheatsheets/cron-expressions/
---

# Cron Expressions Cheatsheet

5-field crontab syntax, nicknames, common schedules, and systemd OnCalendar traps 40 commands in 7 sections, filed under [Linux & Terminal](https://findutils.com/cheatsheets/linux/).

## Five fields

- `minute hour dom month dow`: Field order for a 5-field cron line
- `*`: Every value in that field
- `0-59`: Minute range
- `0-23`: Hour range
- `1-31`: Day of month range
- `1-12`: Month range, or jan-dec names
- `0-7`: Day of week; 0 and 7 are Sunday

## Lists, ranges, steps

- `1,15`: List of values
- `8-11`: Inclusive range
- `*/5`: Every 5 units
- `0-30/2`: Every 2 units inside a range
- `1-5`: Weekdays when used in dow
- `mon-fri`: Named weekday range on some crons

## Common schedules

- `*/5 * * * *`: Every 5 minutes
- `0 * * * *`: Every hour on the hour
- `0 9 * * 1-5`: 09:00 on weekdays
- `0 0 * * *`: Every day at midnight
- `0 0 * * 0`: Every Sunday at midnight
- `0 0 1 * *`: First day of each month
- `30 4 1,15 * *`: 04:30 on the 1st and 15th

## Nicknames

- `@reboot`: Once after startup
- `@hourly`: Same as 0 * * * *
- `@daily`: Same as 0 0 * * *
- `@midnight`: Same as @daily
- `@weekly`: Same as 0 0 * * 0
- `@monthly`: Same as 0 0 1 * *
- `@yearly`: Same as 0 0 1 1 *

## crontab files

- `crontab -l`: List the current user crontab
- `crontab -e`: Edit the current user crontab
- `crontab file`: Install a crontab from a file
- `crontab -r`: Remove the current user crontab
- `/etc/crontab`: System crontab (has a user field)
- `/etc/cron.d/`: Drop-in system crontab files

## Watch-outs

- `DOM + DOW both set`: cron treats that pair as OR
- `systemd OnCalendar`: Treats DOM + DOW as AND
- `6-field cron`: Leading seconds; not Vixie 5-field
- `PATH in crontab`: Often minimal; use full command paths
- `% in command`: Becomes a newline in Vixie cron

## Sources

- `https://github.com/cronie-crond/cronie/blob/master/man/crontab.5`: Cronie crontab manual: fields, ranges, schedules, and implementation limits.
- `https://github.com/systemd/systemd/blob/main/man/systemd.time.xml`: systemd time manual source: calendar expressions and date matching.

## Related

- Cheatsheet: [Linux Commands](https://findutils.com/cheatsheets/linux-commands/)
- Cheatsheet: [Bash Scripting](https://findutils.com/cheatsheets/bash-scripting/)
- Cheatsheet: [Vim Editor](https://findutils.com/cheatsheets/vim-editor/)
- Guide: [Cron to systemd: Convert Crontab to Timers and CronJobs](https://findutils.com/guides/cron-to-systemd-guide/)
- Guide: [Cron Expression Generator: Build and Check Five-Field Schedules](https://findutils.com/guides/cron-expression-generator-guide/)
- Tool: [Cron to systemd](https://findutils.com/developers/cron-to-systemd/)
- Tool: [Cron Expression Generator](https://findutils.com/developers/cron-expression-generator/)
