ich baue hier gerade an einem script zum sauberen shutdown aller server. Da die z.T voneinander abhängen bin ich gerade an dem codeschnipsel, der warten soll, bis der host nicht mehr pingbar ist (denn dann kann ein anderer server ja eh nicht mehr darauf zugreifen). Bisher sieht das so aus:
Code: Alles auswählen
#!/bin/bash
A=0
IP="whatever-i-ping"
while [ $A -eq 0 ]
do
echo "host ist on"
sleep 0.5
ping -c 1 $IP >/dev/null 2>&1
A=$?
done
echo "weiter gehts"
Die Sache mit $A mache ich hauptsächlich um sicher zu stellen, daß beim Start der while Schleife auch wirklich der Wert 0 existiert und $? m.W. nicht direkt gesetzt werden kann.
Dafür den ping Aufruf nochmal vor die Schleife zu setzen schien mir etwas unelegant.
Irgendwelche Verbesserungen und Anmerkungen für einen Scriptpfuscher wie mich?