shell-script "wget" Error bei timeout
Posted: 21. Mar 2007 12:57
Hi all!
Ich habe ein kleines shellscript dass via cronjob regelmäßig durchläuft.
in dem Script werden ganz simpel mit wget einige Seiten aufgerufen, die dann lokal gespeichert werden.
Sieht beispielsweise so aus (URL geändert):
Funktioniert auch klasse. Er überschreibt bei jedem Durchlauf die file. Allerdings kam es in letzter Zeit leider vor, dass der Server auf dem die Seite aufgerufen wird down war.
wget versucht es dann standard mäßig 20mal
Beispiel output:
Er bekommt 20x mal nen Read error und sagt dann "Giving up". Dann überschreibt er jedoch leider die file mit leerem Inhalt!
Ich suche eine unless-abfrage. Also irgendsowas am Anfang "unless output=ERROR"
so dass er das script nur durchläuft wenn der Server erreichbar ist. Wenn nicht soll er die files im alten Zustand lassen - besser alte Infos als gar keine
Hoffe mir kann einer helfen!
Greeetz Basti
Ich habe ein kleines shellscript dass via cronjob regelmäßig durchläuft.
in dem Script werden ganz simpel mit wget einige Seiten aufgerufen, die dann lokal gespeichert werden.
Sieht beispielsweise so aus (URL geändert):
Code: Select all
date=`date '+%F'`
#Homepage - Events today - workshops (NewsindexTeaser)
URL1="http://xxx.xxx.de/tools/export.py?fid=14&date=$date&days=1&event=conference&of=xml"
wget -O news1.xml "$URL1"
wget versucht es dann standard mäßig 20mal
Beispiel output:
Code: Select all
--11:10:11-- http://xxx.xxx.de/tools/export.py?fid=14&date=2007-03-21&days=365&event=conference&of=xml
(try:12) => `news6.xml'
Connecting to xxx.xxx.de[xxx.xxx.5.58]:80... connected.
HTTP request sent, awaiting response...
Read error (Connection reset by peer) in headers.
Retrying.
Ich suche eine unless-abfrage. Also irgendsowas am Anfang "unless output=ERROR"
so dass er das script nur durchläuft wenn der Server erreichbar ist. Wenn nicht soll er die files im alten Zustand lassen - besser alte Infos als gar keine
Hoffe mir kann einer helfen!
Greeetz Basti