Portál AbcLinuxu, 3. května 2025 10:32
Spouštím si cronem na různých strojích řadu skriptů. Stává se, že nějaký zdroj není dostupný a skript potom neskončí. Tím pádem nedostanu od crona výstup a nedozvím se, že nějaký zdroj není dostupný. Hledal jsem si nástroj, který by mi umožnil tento jev ohlídat, takže aby po nějaké době zabil zatuhlý program a skript by mohl pokračovat. Nenašel jsem. Napsal jsem si ho sám. Tady je.
Zavolám si třeba
skonciza 300 df -k || echo ze by problemek NFS \? | \ mailx -s "cron $(hoostname)" ja@doma.cza mám to doma. Já vím že je to docela primitivní, ale párkrát už jsem byl rád, že ho mám. Nerad píšu skripty, o kterých nevím jak skončí.
Prográmek je volný, zkuste si ho.
Tiskni
Sdílej:
df -k & sleep 300 ; kill $!:-)
df -k & # newline sleep 300 && kill -0 $! && echo 'hopla, neskoncilo'
man 1 timeout
No tohle ?
Já jsem to psal původně v Solarisu, tam tenhle program není. Do linuxu jsem ho jenom oprášil, hned to běhalo. Já tam mám pečlivé ošetření návratového kódu a přehnaně opatrný způsob zabíjení. (Heč.) Děkuji, o timeoutu jsem nevěděl.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.