How to create cron statement to run for multiple hours
Solution 1
You cannot, you can use either multiple values OR a range
0 1,2,3,4,5,6,7,8,10,11,12,13,14,15 * * *
Time tags are separated by spaces. Do not use spaces within a tag, this will confuse cron. All five tags must be present. They are a logical AND of each other. There is another space between the last time tag and the first command.
A time tag can be a wildcard "*", which means "all". It can be one value, several values, a range, or a fractional range.
Solution 2
I find it more readable to have two crontab entries:
0 1-8 * * * ...
0 10-15 * * * ...
Gnik
Freelancer. Very passionate in code and software architecting. Always eager to take up the challenge and learn new technologies. Very quick learner and adaptive.
Updated on July 09, 2022Comments
-
Gnik almost 2 years
I need a cron statement to run for few hours eg 1-8 then 10-15. In this case will the following statement work,
0 1-8,10-15 * * *
If not can anyone help me?
Thanks in advance, Gnik
-
K Raphael over 8 years+1. much cleaner/concise. downside is that if something in the command changes, you now have multiple places to edit it
-
eddy85br almost 7 yearsyou could use a bash script to encapsulate the parameters, Then, on crontab just call a single bash script for both entries.