4 ms·
"10 Things you can do with crondom.com that you can't do with crontab: 1. Run a job every 7 minutes" I thought you could just do: */7 * * * * whatever...
by npad 16y ago
"10 Things you can do with crondom.com that you can't do with crontab:
1. Run a job every 7 minutes"
I thought you could just do:
*/7 * * * * whatever...
- lhnn 16y ago*/7, but ya. That is a Linuxism. I found out the hard way setting up some Solaris 9 scripts last summer.
- deleted 16y ago[deleted]
- liuliu 16y agoI don't know. It feels like with this line, the job will be run at 7, 14, 21, 28, 35, 42, 49, 56, thus, between 56 and the next 7, you will have 11 minutes interval. Not that familiar with crontab, I may be wrong here.
- jackowayed 16y agoCorrect
- yycom 16y agoHow else would you divide 60 by 7?
- derefr 16y agoYou don't. You divide 60*7 by 7.
- bmelton 16y agoYou want me to run it every hour?
- omh 16y agoWell, you could put multiple cron lines in. e.g. for every 8 minutes: 0,8,16,24,32,40,48,56 0,2,4,6,8,10,12,14,16,18,20,22 * * * cmd 4,12,20,28,36,44,52 1,3,5,7,9,11,13,15,17,19,21,23 * * * cmd This starts to get a bit silly when the interval isn't a factor of 24 though.
- mathgladiator 16y agoI wrote a simple script to generate cron tab specs for "every X minute", and while I enjoyed using gcd and lcm in a real application; something wasn't right. 7 is a very canonical and crazy case because it takes 7 days to cycle. but even then, it doesn't work with months except for February for non leap years.
- mike-cardwell 16y agoYou misunderstand what he's saying. Because 60 doesn't divide into 7, don't use one 60 minute cron job. Use 7 cron jobs. You could get this magical 7 minute experience over a 24 hour period by creating the following 7 jobs: 0-56/7 0-21/7 * * * Command 3-59/7 1-22/7 * * * Command 6-55/7 2-23/7 * * * Command 2-58/7 3-17/7 * * * Command 5-54/7 4-18/7 * * * Command 1-57/7 5-19/7 * * * Command 4-53/7 6-20/7 * * * Command Of course, the last job would finish at 23:55, and the next start at 00:00 which is bad. So you'd need to do it on a per day basis. Luckily there are 7 days in the week. So you would just need to write those 7 jobs above on a per day basis. You'd end up with 49 jobs all looking similar to this: 0-56/7 0-21/7 * * Wed Command
- chriskelley 16y ago
- SriniK 16y agoI am ignorant on specific time requirements on running crontabs but I always do either 6min or 10min or something which is divisible. Are there any specific app requirements in running 7min or 17sec?
- dfox 16y agoAnother problem with 17 seconds is that normal cron has resolution of one minute :)
- mike-cardwell 16y agoscreen -dmS 17secondjob perl -e 'while(1){`run the command`;sleep 17}'
- xyzzyz 16y agoThis will not run the `command` in 17 seconds intervals. You need to take into account the amount of time that it takes to run it.
- mike-cardwell 16y agoOk. Whilst we're being anal: screen -dmS 17secondjob perl -Mthreads -e 'while(1){threads->create(sub{`run the command`})->detach();sleep 17}'
- eru 16y agoOr just use watch.
- mike-cardwell 16y agoCool. I was unfamiliar with this command. Looks useful.
- 16y ago