Ahmad Awais

NAVIGATE


SHARE


Anatomy of crontab!

Ahmad AwaisAhmad Awais

More often than not, we find ourselves in a situation where something needs to be automated. For example, since I use Let’s Encrypt SSL certificates, I have to renew them every 90 days.

To automate it, I use a simple cron. Being a DevOps fanboy, I like doing things from scratch. This article will help you write a simple cron yourself if you have SSH/root access to your server.

🎯 Crontab#

You can use the crontab command to setup your cron on a Unix based OS.

NAME: crontab — maintain crontab files for individual users (V3)

SYNOPSIS: crontab [ −u user] file crontab[−uuser]{−l |−r |−e}

DESCRIPTION: The crontab utility is the program used to install, deinstall or list the tables used to drive the cron(8) daemon in Vixie Cron. Each user can have their own crontab.

🤖 Add a Cron Job#

Let’s add a simple cron job that repeats itself every fifth day.

1. Edit the Current crontab#

Add a cron job by the command (this will open up the crontab file where you can add your crons).

crontab -e

A crontab file has five fields for specifying mins, hours, the day of the month, month, and the day of the week followed by the command to be run at that interval.

Crontab* in the value field above means all legal values as in braces for that column.

UPDATE: Check out this awesome resource to visualize→ crontab.guru

2. Add a Cron Job#

Since we only want our Cron to run every fifth day. I’ll add something like this at the end of the file. Each cron job should be at a new line.

0 0 */5 * * shell_command_here

or to be exact a custom shell command for a bash function that I wrote.

0 0 */5 * * wpsites update --le --all

3. Save the crontab#

Save it CTRL (⌃) + X then Y — finally press ENTER (return)

4. Save the crontab#

You can check the new crons have been installed of not by

crontab -l

To Summarize#

1️⃣ Edit the cron by command crontab -e
2️⃣ Save it CTRL (⌃) + X then Y — finally press ENTER (return)
3️⃣ Check cron jobs with crontab -l

And you’re done :) Let me know how it goes at your end!

Peace! ✌️

Founder & CEO of ⌘ Command Code, the most used coding agent for open models: 160K+ users, 50K+ paying customers. Founded Langbase (AI cloud for agents with memory & tools).

"What an awesome example for developers." — Satya Nadella, CEO of Microsoft, on my NASA Ingenuity code.

NASA Ingenuity Mars Helicopter code contributor · 6× GitHub Star, one of the first 8 Gold Stars · #1 trending JavaScript developer on GitHub · 6× Google Developer Expert · 6× Microsoft MVP.

Ex VP DevRel & DevTools at RapidAPI · Google Developers Advisory Board (gDAB) founding member · OpenAPI Business Governing Board, Linux Foundation · SF DevNetwork AI/ML Advisory Board · Angel investor (Replit, Resend, Daytona, Gumroad and you?).

Award-winning open source engineering leader: 300+ projects, 50–100M downloads a year, including Shades of Purple (5M+ developers) and corona-cli (10B+ queries).

Taught 217K+ developers via NodeCLI.com and VSCode.pro. 160+ talks. Blogging since 2000, billions of views.

❯ Read more about Ahmad Awais or come say hi on 𝕏 @MrAhmadAwais.

Newsletter

The Developer Takeaway

Founder notes on AI, dev tools, and building developer products. No spam.

247,813+ developers subscribed
Comments 1
  • Leonardo Borsten
    Posted on

    Leonardo Borsten Leonardo Borsten

    Reply Author

    Great post! Can you please explain the */5 notation for the days? Looks like it says “any day divided by 5”.

    Thanks!