Understand Cron Jobs In 5 Minutes

In Linux, the crontab command is used to schedule execution of commands at certain time intervals whether it be hourly, daily, monthly or every x amount of minutes. This article is designed to show you the simple way of understanding crontab.

Understanding the fields:

# (Use to post in the top of your crontab)
# ------------- minute (0 - 59)
# | ----------- hour (0 - 23)
# | | --------- day of month (1 - 31)
# | | | ------- month (1 - 12)
# | | | | ----- day of week (0 - 6) (Sunday=0)
# | | | | |
# * * * * * command to be executed

We can see that if you include the field for command to be executed there are a total of six fields that can be used when setting up a cron job.

Setting up a cron job:

The first thing we want to do is open up the crontab. To do this, we need to execute the following command:

root@foo~:# crontab -e

This will open crontab in the default editor on your system, which is usually Vi. To modify this editor, as root, execute the following command:

root@foo~:# export VISUAL=nano -w 

Once inside the editor, you will want to refer to the fields above in order to schedule a cron job for the appropriate time. Here are some examples:

*/5 * * * * /home/adam/script.sh will execute script.sh every 5 minutes. This will set crontab every 5 minutes.
59 23 * * 1-5 /home/adam/script.sh will execute script.sh every day, monday through friday, at 11:59 p.m.
0 0 * * 0 /home/adam/script.sh will execute script.sh once a week. You could also specify @weekly instead of 0 0 * * 0.

0 23 1 * * /home/adam/script.sh will execute script.sh once a month, on the first, at 11:00 PM. You could also specify @monthly in place of 0 23 1 * *.

Conclusion:

You should now have a firm understanding of setting up cron jobs for your Linux system. To learn more about crontab, check out the following sites:

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>