← All Articles

Introduction to Cron Scheduling: Complete Linux Cron Tutorial

March 2026 · 7 min read

Cron is the most classic job scheduling tool in Unix/Linux systems. From periodic database backups to log cleanup and report notifications, cron is an essential tool for system administrators and developers alike.

History of Cron

Cron was first implemented by Ken Thompson in Version 7 Unix (1979). In 1987, Paul Vixie released an enhanced version known as Vixie cron, which became the foundation for cron in most Linux distributions.

Cron Expression Syntax

A standard cron expression consists of five fields:

FieldRangeSpecial Characters
Minute0-59* , - /
Hour0-23* , - /
Day of Month1-31* , - / ? L W
Month1-12* , - /
Day of Week0-7 (both 0 and 7 = Sunday)* , - / ? L #

Special Characters

Quick Tip: The five cron fields are: minute, hour, day-of-month, month, day-of-week. Remember the mnemonic: "Min Hour Day Mon Weekday."

Common Examples

ExpressionDescription
0 * * * *Every hour on the hour
0 0 * * *Every day at midnight
0 9 * * 1-5Weekdays at 9 AM
*/15 * * * *Every 15 minutes
0 0 1 * *First day of every month at midnight

Crontab Management Commands

Parse Your Cron Expressions

Try the Cron Parser Tool →

Conclusion

Cron is the cornerstone of Linux system automation. Mastering cron expression syntax helps you efficiently manage scheduled tasks and improve operational efficiency.

References

  1. IEEE/Open Group. "crontab — schedule periodic background work." POSIX.1-2017. https://pubs.opengroup.org/onlinepubs/9699919799/utilities/crontab.html
  2. Vixie, P. "Vixie Cron." ISC. https://github.com/vixie/cron
  3. Linux man pages. "crontab(5)." Linux Programmer's Manual. https://man7.org/linux/man-pages/man5/crontab.5.html