I want a script to run every 40mins beginning on the 40th minute.
so that means:
00:40, 01:20, 02:00, 02:40, 03:20...
So I made this entry to cron:
*/40 * * * * /path/to/script/foo.sh
Unfortunately this runs the script every 40th minute of the hour:
00:40, 01:40, 02:40...
The same goes with the script that I meant to run every 25mins.
Am I missing something here?
ANSWERS
Alright, in case you happen to drop by here having the same problem
here's how I solved it:
# 40mins-interval
40 0 * * * /path/foo.sh (0)
0,40 2-22/2 * * * /path/foo.sh (2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22)
20 1-23/2 * * * /path/foo.sh (1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23)
# 25mins-interval
25,50 0 * * * /path/foo.sh (0)
0,25,50 5-20/5 * * * /path/foo.sh (5, 10, 15, 20)
15,40 1-21/5 * * * /path/foo.sh (1, 6, 11, 16, 21)
5,30,55 2-22/5 * * * /path/foo.sh (2, 7, 12, 17, 22)
20,45 3-23/5 * * * /path/foo.sh (3, 8, 13, 18, 23)
10,35 4-19/5 * * * /path/foo.sh (4, 9, 14, 19)
Notes:
1. There will still be collisions in this schedule (i.e: see schedules that run on the 0th and 10th minutes on both intervals).
2. The script won't run at an exact interval from its last run today going on the next day (i.e: 25min interval ends @23:45 today, begins @00:25 next day).
See Question&Answers more detail:
os