» »

crontab - zagon vsake 3 tedne

crontab - zagon vsake 3 tedne

kronik ::

Nikjer na netu ne najdem ukaza, da bi se doloceni skript zagnal vsake 3 tedne.

# zazeni /bin/skripta vsake 3 tedne v pon, sre, pet ob 15:13
13 15 * * * 1,3,5/3 /bin/skripta

Je to pravilno?

sverde21 ::

minute ure dnevi tedni leta

na četrtem mestu moraš dat pogoj...
<?php echo `w`; ?>

kronik ::

a ni tako: minuta, ura, dan v mesecu, mesec, dan v tednu ? Se vedno nevem kam naj dam pogoj :)

64202 ::

Tisti /3 ne pomeni tednov, ampak samo po koliko preskakujejo entrije v seznamu pred /. Kaj pa če rečeš tole:

13 15 * * * 1,3,5 test $((`date +%W` % 3)) = '0' && /bin/skripta

Malo še poglej 'man date', če je %W to kar hočeš.
I am NaN, I am a free man!

kronik ::

Ja mislim da bo to ta pravo. Ce se ne motim je potrebno znak % backslashati.

kronik ::

Kaj pa ta primer:

# zazeni ping vsaki drugi petek ob 10:00 v maju, jun, jul in avg
00 10 * 5,6,7,8 5 if [ `date +\%d` -gt 8 && `date +\%d` -lt 17 ]; then /bin/ping; fi

To bi naj v teoriji delovalo, v praksi pa nevem ce obstaja kaka bolsa resitev. pa tisti && med pogoji je misljen kot &. Upam, da je prav.

Sicer pa, ce mas cas malo preveri moj crontab generator in povej ce najdes kako napako :)

64202 ::

% ni treba escapat, pa && se uporablja samo med ukazi, pomeni pa, če se je prvi brez napake izvedel (exit code 0), se bo tudi drugi. V if [ ] izrazih uporabljaj za and -a za or pa -o, torej

if [ `date +%d` -gt 8 -a `date +%d` -lt 17 ]; then /bin/ping; fi

(ne pride mi na pamet kaj boljšega)
I am NaN, I am a free man!

64202 ::

Aha, glede mojega test $((...)) && je bolje uporabiti if kot si ti:

if [ $((...)) = 0 ]; then nekaj; fi

test vrne napako v false primeru in bi ti cron znal pošiljat mejle o napakah.
I am NaN, I am a free man!

kronik ::

tnx.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Crontab in skripta v 8.04.2; kako?

Oddelek: Operacijski sistemi
9814 (609) BigWhale
»

Shell scripta

Oddelek: Programiranje
61017 (621) BigWhale
»

[Linux]bash script

Oddelek: Operacijski sistemi
5679 (634) 'FireSTORM'
»

Crontab sheduled job (v skripti ali brez)

Oddelek: Operacijski sistemi
6774 (742) rokp
»

Koledar in ponavljajoči se dogodki

Oddelek: Programiranje
5523 (433) darh

Več podobnih tem