我想写一个脚本,它会不断检查网络中应该整天在线的任何设备是否真的在线。我尝试使用 ping,但是
if [ "`ping -c 1 some_ip_here`" ]
then
echo 1
else
echo 0
fi
无论我输入有效还是无效的 IP 地址,都会给出
1
。如何检查特定地址(或更好的 IP 地址列表中的任何设备)是否脱机? 最佳答案
Ping 根据错误类型返回不同的退出代码。
ping 256.256.256.256 ; echo $?
# 68
ping -c 1 127.0.0.1 ; echo $?
# 0
ping -c 1 192.168.1.5 ; echo $?
# 2
0 表示主机可达
2 表示无法访问
关于bash - 通过在 bash 脚本中使用 ping 检查主机可用性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18123211/