Run crontab (cron jobs) Every 10 Minutes

How do I run a cron job or a shell script every 10 minutes using Linux / UNIX cron service?

Cron> is a time-based scheduling service in a Linux or Unix-like computer operating systems. Cron job are used to schedule commands to be executed periodically.
Tutorial details
Difficulty Easy (rss)
Root privileges No
Requirements None
Time 5m
You can setup commands or scripts, which will repeatedly run at a set time. Cron is one of the most useful tool in Linux or UNIX like operating systems. The cron service (daemon) runs in the background and constantly checks the /etc/crontab file, /etc/cron.*/ directories. It also checks the /var/spool/cron/ directory.

ADVERTISEMENTS

First, Login to UNIX/Linux system.

Type the following command to enter cronjob:
$ crontab -e
Each cronjob has the following syntax:

# +---------------- minute (0 - 59)
# |  +------------- hour (0 - 23)
# |  |  +---------- day of month (1 - 31)
# |  |  |  +------- month (1 - 12)
# |  |  |  |  +---- day of week (0 - 6) (Sunday=0 or 7)
# |  |  |  |  |
  *  *  *  *  *  command to be executed

To get crontab to run a task every 10 minutes you could type as follow:
*/10 * * * * /path/to/command
OR
*/10 * * * * /path/to/script
Save and close the file.
Where,

  1. The asterisk (*) operator specifies all possible values for a field. For example, an asterisk in the hour time field would be equivalent to every hour or an asterisk in the month field would be equivalent to every month.
  2. The */10 is used in conjunction with ranges. For example, 0-23/2 can be used in the hours field to specify command execution every other hour. Steps are also permitted after an asterisk, so if you want to say every two hours just use */2. In this example, */10 in the minutes field to specify command execution every 10 minute.
See also
This entry is 13 of 16 in the Linux Cron Jobs Howto & Tutorial series. Keep reading the rest of the series:
  1. What is cron on a Linux or Unix-like systems?
  2. How To Add Jobs To cron Under Linux or UNIX?
  3. Verify crond Daemon And Cronjobs Are Running
  4. Start Restart and Stop The Cron or Crond Service
  5. List / Display All Cron Jobs
  6. Linux / UNIX Crontab File Location
  7. Change Crontab Email Settings ( MAILTO )
  8. Disable The Mail Alert By Crontab Command On a Linux or Unix-like Systems
  9. At What Time Cron Entries In cron.daily, cron.weekly, cron.monthly Run?
  10. Execute Cron Job After System Reboot
  11. Setup and Run PHP Script As A Cron Job
  12. Run crontab job every minute on a Linux or Unix-like system
  13. Running crontab (cron jobs) Every 10 Minutes
  14. Cron Job Script Execution on the Last Day of a Month
  15. Execute / Run crontab (cron jobs) every 1 minute
  16. Ubuntu create cron.log file
🐧 Get the latest tutorials on SysAdmin, Linux/Unix, Open Source/DevOps topics:
CategoryList of Unix and Linux commands
File Managementcat
FirewallAlpine Awall CentOS 8 OpenSUSE RHEL 8 Ubuntu 16.04 Ubuntu 18.04 Ubuntu 20.04
Network Utilitiesdig host ip nmap
OpenVPNCentOS 7 CentOS 8 Debian 10 Debian 8/9 Ubuntu 18.04 Ubuntu 20.04
Package Managerapk apt
Processes Managementbg chroot cron disown fg jobs killall kill pidof pstree pwdx time
Searchinggrep whereis which
User Informationgroups id lastcomm last lid/libuser-lid logname members users whoami who w
WireGuard VPNAlpine CentOS 8 Debian 10 Firewall Ubuntu 20.04

ADVERTISEMENTS
24 comments… add one
  • rockie Jun 27, 2008 @ 15:14

    */10 * * * * /home/test.sh > /dev/null 2>&1
    crontab: error on previous line; unexpected character found in line.
    crontab: errors detected in input, no crontab file generated.

    Guess it does not work in Solaris 8

  • budacsik Sep 21, 2008 @ 11:24

    OR

    sudo -i
    cd /etc/cron.d
    touch command
    vi command
    # in command file
    MAILTO=rootmail@foo.bar
    */10 * * * * /path/to/command

    # save command file and exit
    if you do not want to receive a letter then
    MAILTO=””

  • dakota Jul 23, 2009 @ 11:38

    yeah, budacsik. why use one command when you can use 4 :)))

  • ahah Nov 25, 2011 @ 1:58

    yes, just one line
    sudo vi /etc/cron.d/command

  • Mannoj Apr 13, 2012 @ 13:41

    what if I need to start the script at 3:00 AM exactly and consecutive executions should begin after every 10 mins.
    eg: 3:00 3:10 3:20 etc… lifetime

    But the clause is, it should start exactly at 3:00. I can play in scripts. But is there an option like this in crons?

    • alex Aug 7, 2012 @ 13:46

      */10 3,4,5 * * *
      It will be called
      WHEN ( MINUITES DIVIDED BY 10 AND DIVISION REMAINDER EQUALS 0
      AND
      ( HOUR EQUALS 3 ) OR ( HOUR EQUALS 4 ) OR ( HOUR EQUALS 5 ) )

      So it will run at 3.00, 3.10, 3.20, 3.30, 3.40, 3.50, 4.00, 4.10….. 5.50

      • Mannoj Aug 10, 2012 @ 6:31

        so can I go like this to start at 3AM and then by 10 mins invokes would this continue around the clock?
        */10 3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,1,2 * * *

        • Joan Oct 27, 2012 @ 0:29

          */10 3-24 * * *
          you can define ranges within a cron job instead of separating everything with a comma

        • yoan Oct 27, 2012 @ 0:31

          you can use range instead of separating everything with a comma
          i.e */10 3-24 * * *

          • Sajad Jan 30, 2016 @ 9:47

            I think Mannoj wanted a cron job that runs 3:00 AM for the first time and every 10 minutes from 3:00 AM and goes on. But your cron job runs only at 3 to 24 every 10 minutes that is not the answer!

  • Nik Rolls Dec 3, 2012 @ 21:01

    What this post doesn’t explain is why it works. In a crontab, the / symbol means that it will run if the current value can be divided by the following number without a remainder.

    This isn’t important for simple timers like ‘every ten minutes’, but can be very useful when using more advanced calculations.

  • jordon Jan 19, 2013 @ 4:36

    This is very helpful….thnx everyone. I got my queru answerd without any more search…u gyus rock…!!

  • Sporo Jul 15, 2013 @ 7:39

    hi, how to i create a cronjob for a folder with multiple subfolders and run them all at once?

  • prakash Nov 4, 2013 @ 8:01

    don’t trust any crontab generator

  • steve Feb 8, 2014 @ 11:26

    You see the / option posted all over the net as a shortcut for “every” but I do not believe it is applicable to all systems, for instance I do not believe this will work on AIX.

    Just sayin…

  • Eric Feb 28, 2014 @ 17:42

    How would I output my file from a MySQL script to an FTP site?

  • gummy Sep 13, 2014 @ 12:37

    It works and it is extremelly simple. Thank you man!

  • Muthu Jun 9, 2015 @ 9:22

    */10 means every 10 min.It is understandable.But,when will the the scripts will run? I meant script run times…?

    • Akshay Surve Jun 13, 2015 @ 7:54

      For eg. at 1am it will run at 1:00, 1:10, 1:30, 1:40, 1:50 times :)

  • moko Aug 2, 2015 @ 9:44

    thank you very much! working in my ubuntu

  • ramarasan.m Aug 20, 2015 @ 9:51

    echo “Test of Mail body” | mail -s “Mail subject” to@somedomain.com

    mysqldump -u root -p pss dbname /opt/backup/

    /opt/script/mail.sh

    every five minutes

    */5 * * * * /root/bin/showTime.sh

  • bilal Nov 28, 2015 @ 19:09

    i want to run this script for 30 mins after every 15 mins how can i do that ??

    the below one is doing for 5 min after 1 hour. i want 30 min after 15 mins break

    0 * * * * nohup /home/pi/mmal/motion -n -c /home/pi/mmal/motion-mmalcam.conf 1>/dev/null 2>&1 </dev/null &

    5 * * * * pkill -9 motion

  • pramod Oct 18, 2016 @ 14:00

    how to set cron morning 8.30 AM to 11.30 PM every day.

  • diego Dec 17, 2017 @ 14:36

    hello,

    we have a cron job that run every Saturday at 01:00 (0 1 * * 6) we want to modified to run every 2 weeks on Saturday at 01:00.

    Thanks.

Leave a Reply

Your email address will not be published.

Use HTML <pre>...</pre>, <code>...</code> and <kbd>...</kbd> for code samples.