我們在對區域網路的網絡情況進行維護時,經常需要收集網絡中存活的IP,這時候我們可以寫一個shell腳本,自動收集某一網段的IP。執行該腳本,線上IP綠色顯示,離線IP紅色顯示;并分别寫入到指定IP狀态清單檔案中。
[root@centos ~]# cd /usr/local/bin/
[root@centos bin]# vim alive.sh
#!/bin/bash
NETWORK=$1
for HOST in $(seq 1 254)
do
ping -c1 -w1 $NETWORK.$HOST &>/dev/null && result=0 || result=1
if [ "$result" == 0 ];then
echo -e "\033[32;1m$NETWORK.$HOST is up \033[0m"
echo "$NETWORK.$HOST" >> /tmp/up.txt
else
echo -e "\033[;31m$NETWORK.$HOST is down \033[0m"
echo "$NETWORK.$HOST" >> /tmp/down.txt
fi
done
賦予腳本執行權限:
[root@centos bin]# chmod +x alive.sh
檢視71網段的所有IP狀态:
[root@centos ~]# sh alive.sh 192.168.71
192.168.71.1 is up
192.168.71.2 is up
192.168.71.3 is down
192.168.71.4 is down
192.168.71.5 is up
192.168.71.6 is down
192.168.71.7 is up
192.168.71.8 is down
192.168.71.9 is down
192.168.71.10 is down
192.168.71.11 is up
192.168.71.12 is down
192.168.71.13 is up
192.168.71.14 is up
192.168.71.15 is down
192.168.71.16 is down
192.168.71.17 is down
192.168.71.18 is down
192.168.71.19 is up
192.168.71.20 is up
192.168.71.21 is up
192.168.71.22 is up
192.168.71.23 is up
192.168.71.24 is up
192.168.71.25 is down
192.168.71.26 is up
...
我們也可以檢視生成的IP狀态清單檔案
[root@centos bin]# cat /tmp/up.txt
[root@centos bin]# cat /tmp/down.txt
本文轉自 M四月天 51CTO部落格,原文連結:http://blog.51cto.com/msiyuetian/1735804,如需轉載請自行聯系原作者