改指令碼檢視哪些ip被佔用。
#!/bin/bash
for i in {1..10} //賦予i變數1-10
do //幹什麼
ping -c1 -w1 192.168.7.$i &> /dev/null //ping 192.168.7.網段 每個ip1次 顯示1行全輸出到無底洞
if [ $? -eq 0 ]; //返回值是否為0
then //如果返回值為0則做下面的輸出
echo station$i is up!
else //否則
echo station$i is down! //輸出這步
fi done
賦予該指令碼可執行許可權: chmod +x ipadd.sh
執行該指令碼:
[root@localhost shellscripts]# ipadd.sh
station1 is up!
station2 is down!
station3 is up!
station4 is down!
station5 is down!
station6 is down!
station7 is down!
station8 is down!
station9 is down!
station10 is down!
===========================
[root@localhost shellscripts]# ping 192.168.7.3
PING 192.168.7.3 (192.168.7.3) 56(84) bytes of data. 64 bytes from 192.168.7.3:
icmp_seq=1 ttl=64 time=0.043 ms 64 bytes from 192.168.7.3:
icmp_seq=2 ttl=64 time=0.040 ms ^C --- 192.168.7.3
ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1791ms rtt min/avg/max/mdev = 0.040/0.041/0.043/0.006 ms
[root@localhost shellscripts]# echo $? //ping通返回值為0
0 ==============================
[root@localhost shellscripts]# ping 192.168.7.4
PING 192.168.7.4 (192.168.7.4) 56(84) bytes of data.
From 192.168.7.3 icmp_seq=1 Destination Host Unreachable From 192.168.7.3
icmp_seq=2 Destination Host Unreachable From 192.168.7.3
icmp_seq=3 Destination Host Unreachable ^C --- 192.168.7.4
ping statistics --- 5 packets transmitted, 0 received, +3 errors, 100% packet loss, time 4084ms pipe 3
[root@localhost shellscripts]# echo $? 1 //ping不通返回值不為0