一、实现目标
使用for循坏编程实现服务器IP地址的连通性
二、实现思路
1、获取要检测的IP地址表
2、将IP地址列表保存到文件中
3、将IP地址读取出来保存到变量中
4、使用ping命令结合for循坏实现校验
5、如果连通将IP地址保存到ok.txt文件中
6、如果不连通将地址保存到nook.txt文件中
三、实战演练
[root@master ~]# cd testsh/
[root@master testsh]# vim iplist
[root@master testsh]# cat iplist
192.168.10.2
192.168.10.3
192.168.10.4
192.168.10.5
[root@master testsh]# vim ping.sh
[root@master testsh]# cat ping.sh
#! /bin/bash
ips=$(cat /root/testsh/iplist)
for ip in $ips
do
echo "正在ping $ip,请稍等..."
ping -c 2 -i 0.5 -w 3 $ip &>/dev/null
if [ $? -eq 0 ]
then
echo "地址$ip是通的"
echo $ip >>/root/testsh/ok.txt
else
echo "地址$ip是不通的"
echo $ip >>/root/testsh/nook.txt
fi
done
echo "已经检测完毕"
知识点分享
ping命令的使用
-c 发送ping包的个数
-i 时间件隔
-w 超时时间
列如:ping -c 2 -i 0.5 -w 3 192.168.10.2
四、实验结果
[root@master testsh]# bash ping.sh
正在ping 192.168.10.2,请稍等...
地址192.168.10.2是通的
正在ping 192.168.10.3,请稍等...
地址192.168.10.3是通的
正在ping 192.168.10.4,请稍等...
地址192.168.10.4是不通的
正在ping 192.168.10.5,请稍等...
地址192.168.10.5是不通的
已经检测完毕
[root@master testsh]#