PDA

Bekijk Volledige Versie : Cronjob iedere 5 min, m.u.v. 2-5uur



Bob2
15/06/05, 02:33
Weet iemand hoe ik een cronjob kan maken die iets iedere 5 minuten uitvoert. Behalve niet tussen 2 en 4 uur 's nachts?

The MAzTER
15/06/05, 02:37
je kan toch in het script dat je uitvoer checken hoe laat het is ;) en als het tussen 2 en 4e is dan de rest van het script niet uitvoeren.

Bob2
15/06/05, 02:39
k, en hoe doe je dat precies? Ben nog niet zo gevorderd met linux scripting :)

Bob2
15/06/05, 02:43
$uur=date("H");
if($uur!=4 && $uur!=3 && $uur!=2){

zoiets dus, maar dan voor shell scriptje :)

froggie
15/06/05, 08:15
Linkje over bash time scripting (maakt deel uit van een uitgebreide bash tutorial): http://advbash.activeventure.net/timedate.html

Het komt er in het kort op neer dat je mbv date de tijd string moet opvragen waarna je met sed en/of awk de gewenste waarde uit de string pakt.

Zoiets dus:


date | sed -e "s/:/ /g" | awk '{print $4}'

Je uiteindelijke script zal iets worden als:


hour=`date | sed -e "s/:/ /g" | awk '{print $4}'`
if [ hour > 1 && hour < 4 ]
then
<do something here>
fi

Scriptfouten onder voorbehoud, het is nog vroeg! :D

Flydesign.nl
15/06/05, 08:45
*/15 9-17 * * * root connection.test
Will run connection.test every 15 mins between the hours or 9am and 5pm


Ik zou dit eerder oplossen met cron, aangezien je anders op 2 plaatsen bezig bent met het tijdsstip van uitvoeren bepalen. Het bovenstaande vond ik op de volgende pagina:

http://www.unixgeeks.org/security/newbie/unix/cron-1.html

Denk dat je daarmee wel vooruit kan.

kilobit
18/06/05, 09:23
Origineel geplaatst door froggie

Zoiets dus:


date | sed -e "s/:/ /g" | awk '{print $4}'



date +%k
Kan ook en is wat korter

cashmere
18/06/05, 11:33
ga gewoon verder met de tip van flydesign, wel zo netjes.

Bob2
20/06/05, 22:53
Idd supertip, alleen werk ie bij mij niet, krijg ook geen foutmelding van cron ofzo.... maar wordt helaas toch uitgevoerd, ook tussen 3 en 7...

Onderstaand mijn regeltje:

5 7-3 * * * /usr/bin/mrtg /etc/mrtg.cfg >/dev/null 2>&1


# rpm -q vixie-cron
vixie-cron-3.0.1-74

Stefan Mensink
20/06/05, 23:03
Wat dacht je dan van....

*/5 0-3,7-23 * * * /usr/bin/mrtg /etc/mrtg.cfg >/dev/null 2>&1