shell脚本实现网络连接的检测

通过ping检测整个网段内的ip网络连接状态,具体的脚本实现如下;

1.while循环实现

#!/bin/bash
# Ping网段所有IP
ip=1 #通过修改初值
while [ $ip != "254" ];
do
#yes正常,no主机不存在或不正常 利用了逻辑与或非的短路功能
ping 192.168.0.$ip -c 2 | grep -q "ttl=" && echo"192.168.0.$ip yes" || echo "192.168.0.$ip no"
ip=`expr "$ip" "+" "1"`
done

2.for循环实现

#!/bin/bash
# Ping网段所有IP
ip="192.168.0."
for i in `seq 1 254`
do
  ping -c 2 $ip$i |grep -q 'ttl=' && echo "$ip$i yes"|| echo "$ip$ino"
  #yes正常,no主机不存在或不正常

done


运行脚本结果输入如下所示:

shell脚本实现网络连接的检测_第1张图片


你可能感兴趣的:(shell)