Shawn Taylor
Shawn Taylor

Reputation: 1454

Crontab Formatting - every 15 minutes

I'm trying to get a simple crontab job to run every 15 minutes and am having trouble deciding how to format the timing.

What I've been putting down is the following:

15 * * * * ------------------------

I'm pretty sure this just runs the first 15 minutes of every hour.

I think that crontab allows users to specify exact times to run, namely:

0, 15,30,45 * * * * -------------------------

But if I wanted to run the crontab every 15 minutes from the moment I start it, (which may not necessarily be on a value divisible by 15), how would I go about formatting that/is that possible?

Upvotes: 34

Views: 67859

Answers (3)

user12555411
user12555411

Reputation: 19

0,15,30,45 for 15 minutes is incorrect.

The better and simply way is */15 * * * * for 15 minutes.

5 minutes
*/5 * * * *

15 minutes
*/15 * * * *

30 minutes
*/30 * * * *

60 minutes
0 * * * *

1 day
0 0 * * *

Upvotes: 1

Keith Thompson
Keith Thompson

Reputation: 263497

Crontab doesn't remember what time you "started" (presumably the time you executed the crontab -e or crontab filename command).

If you want to run the job every 15 minutes starting from an arbitrary time, you'll have to specify that time. This:

7-59/15 * * * * command

will run at 7, 22, 37, and 52 minutes after each hour. That's assuming you're running Vixie cron, which is the most common implementation. For better portability, you can use:

7,22,37,52 * * * * command

And remember that you can't have spaces within any of the first 5 fields; 0, 15,30,45, as you had in your question, is invalid.

Upvotes: 56

earl3s
earl3s

Reputation: 2373

You would format the crontab like this to get it to run every 15 minutes.

*/15 * * * * [path/to/script]

Upvotes: 43

Related Questions