Hi Liste!
Also ich br�uchte eine kleine BASH-L�sung f�r folgendes Problem:
Ich will einen Host im www abpingen um damit die
Erreichbarkeit von ppp0 zu testen.
Wenn der ping ins leere geht soll ppp0 neugestartet werden.
Das mit dem neustarten von ippp0 funktioniert �ber die
von debian mitgeliferten Scripte
/usr/bin/pon
und
/usr/bin/poff

Ich habe schon folgende L�sungen:

foo=`/bin/ping www.heise.de -c 6 -s 1 | tail -1 | awk '{print $7}'`

if [ "$foo" = "0%" ] ; then
        echo "ppp0 up"
else
        echo "ppp0 down"
fi

oder

foo=$(/bin/ping -c 15 "www.heise.de" | grep 64)

if [ "$foo" = "" ] ; then
        echo "ppp0 down"
else
        echo "ppp0 up"
fi


Gibt es noch etwas eleganteres?
Bei man ping kann man n�mlich folgendes lesen:
If ping does not receive any reply packets at all it will exit with code 1.
On error it exits with code 2. Otherwise it exits with code 0.
This makes it possible to use the exit code to see if a host is alive or not.

Wie kann man das abfangen?

Gr�sse
Tobi

----------------------------------------------------------------------------
PUG - Penguin User Group Wiesbaden - http://www.pug.org

Antwort per Email an