Chcę napisać skrypt, który sprawdzałby, czy którekolwiek z urządzeń w sieci, które powinny być online przez cały dzień, są naprawdę online. Próbowałem użyć polecenia ping, aleSprawdzanie dostępności hosta za pomocą polecenia ping w skryptach bash
if [ "`ping -c 1 some_ip_here`" ]
then
echo 1
else
echo 0
fi
daje 1
bez względu na to, czy mogę podać poprawny lub niepoprawny adres IP. Jak mogę sprawdzić, czy określony adres (lub lepiej jakiekolwiek urządzenie z listy adresów IP) przeszedł w tryb offline?
Należy rozważyć użycie 'nmap', pozwala określić zakresy adresów IP. – devnull
FWIW, twój fragment działa dobrze dla mnie. –
Nie jest to odpowiedź na pytanie, ale lepiej użyć "$ (ping -c 1 some_ip_here)" zamiast "ping -c 1 some_ip_here". [sprawdź ten link, aby uzyskać więcej informacji] (http://stackoverflow.com/a/9449788/1547699) – Anubis