Mitunter hat man das Problem, eine nicht kleine Anzahl an Rechnern auf Erreichbarkeit zu überprüfen. Die Adressen und Hostnamen liegen als Excel-Liste vor, aber diese alle von Hand zu pingen … dazu bin ich echt zu faul. Also habe ich mir ein kleines Script gebaut, welches diese Aufgabe elegant erledigt:
#!/bin/sh # # Sendet einen Ping an alle in der übergebenen Datei aufgeführten Adressen. # In der Liste muss pro Zeile zuerst die IP-Adresse und danach durch Leerzeichen # getrennt der Hostname stehen (optional). # Die Ausgabe von Ping kann unterdrückt werden, indem STDERR ins Null-Dev # geschickt wird: # ping_list liste.txt 2>/dev/null # #set -x Newline=' ' IFS=$Newline for LINE in `cat $1` do #echo "'$LINE'" ADR=${LINE%% *} HOST=${LINE##* } #echo "Adr: $ADR" #echo "Host: $HOST" if [ "$OSTYPE" = "linux" ] then ping -q -W 3 -c 1 $ADR 1>&2 elif [ "$OSTYPE" = "hpux11.00" ] then ping $ADR -n 1 -m 3 1>&2 else echo "Unknown OS" exit 99 fi if [ $? -eq 0 ] then echo "$ADR ($HOST) is up" else echo "$ADR ($HOST) FAILED" fi done IFS=
Es arbeitet zzt. unter Linux (SuSE 11.1) und HP-UX 11i und kann auch hier heruntergeladen werden:
ping_list