Mailinglist Archive: opensuse-de (2055 mails)
| < Previous | Next > |
Re: wget Problem
- From: Thomas Moritz <thm_ml@xxxxxxxxxxx>
- Date: Fri, 11 Nov 2005 12:20:02 +0100
- Message-id: <200511111220.02346.thm_ml@xxxxxxxxxxx>
Am Mittwoch, 9. November 2005 21:59 meinte David Haller:
Hallo David,
> Am Wed, 09 Nov 2005, Thomas Moritz schrieb:
> [..]
>
> >[1] Warum schreibst Du das File eigentlich nicht gleich an die
> >richtige Stelle?
> >
> >#!/bin/bash
> >woher="http://www.von.hier.de"
> >wohin="/dev/null" # :-)
> >wget -c "$woher" -nH --directory-prefix="$wohin" && machnochwas
> ### Variante 'if-then-else-fi':
> if wget -c -O "$wohin" "$woher"; then
> machnochwas
> und noch mehr
> else
> retval=$?
> echo "So ein Mist, wget kann '$woher' nicht saugen" >&2
> exit $retval
> fi
Du warst so ausfuehrlich:-) Dann sollte aber die case-Variante nicht
fehlen:
case "`wget -c $woher -O $wohin`$?" in
0) echo "hat geklappt"; echo "machnochwas";;
1) echo "ging schief"; echo "machs nochmal";;
*) echo "Ende mit Fehlercode=$?";;
esac
Das hat den Vorteil, dass man bei Programmen mit mehreren
definierten ReturnCodes auf jeden beliebigen entsprechend reagieren
kann. (schoen uebersichtlich)
Im Beispiel bin ich nur von 0=OK 1=!OK ausgegangen. Hatte gerade
keine Lust mit wget rumzuspielen:-)
PS.: Die Option -O von wget hatte ich mir nie angewoehnt, da sie nur
bei 1-File-Downloads (wie hier vom OP gesucht) sinnvoll ist. Der zu
schreibende FileName ist hierbei zwingend erforderlich.
Mein Standard ist eher folgender Aufruf:-)
wget -r -c "$woher" -nH --directory-prefix="$wohin" --cut-dirs=x
(bei grossen Sachen kommt noch ein --dont-remove-listing hinzu)
MfG Th. Moritz
--
Wieso haben so viele Maenner einen Bierbauch?
Das der arbeitslose Zwerg ein Dach ueberm Kopf hat:-)
Hallo David,
> Am Wed, 09 Nov 2005, Thomas Moritz schrieb:
> [..]
>
> >[1] Warum schreibst Du das File eigentlich nicht gleich an die
> >richtige Stelle?
> >
> >#!/bin/bash
> >woher="http://www.von.hier.de"
> >wohin="/dev/null" # :-)
> >wget -c "$woher" -nH --directory-prefix="$wohin" && machnochwas
> ### Variante 'if-then-else-fi':
> if wget -c -O "$wohin" "$woher"; then
> machnochwas
> und noch mehr
> else
> retval=$?
> echo "So ein Mist, wget kann '$woher' nicht saugen" >&2
> exit $retval
> fi
Du warst so ausfuehrlich:-) Dann sollte aber die case-Variante nicht
fehlen:
case "`wget -c $woher -O $wohin`$?" in
0) echo "hat geklappt"; echo "machnochwas";;
1) echo "ging schief"; echo "machs nochmal";;
*) echo "Ende mit Fehlercode=$?";;
esac
Das hat den Vorteil, dass man bei Programmen mit mehreren
definierten ReturnCodes auf jeden beliebigen entsprechend reagieren
kann. (schoen uebersichtlich)
Im Beispiel bin ich nur von 0=OK 1=!OK ausgegangen. Hatte gerade
keine Lust mit wget rumzuspielen:-)
PS.: Die Option -O von wget hatte ich mir nie angewoehnt, da sie nur
bei 1-File-Downloads (wie hier vom OP gesucht) sinnvoll ist. Der zu
schreibende FileName ist hierbei zwingend erforderlich.
Mein Standard ist eher folgender Aufruf:-)
wget -r -c "$woher" -nH --directory-prefix="$wohin" --cut-dirs=x
(bei grossen Sachen kommt noch ein --dont-remove-listing hinzu)
MfG Th. Moritz
--
Wieso haben so viele Maenner einen Bierbauch?
Das der arbeitslose Zwerg ein Dach ueberm Kopf hat:-)
| < Previous | Next > |