簡要內容:使用shell scripts查找局域網主機。
1、shell腳本
局域網內有一設備使用ip管理,忘記ip,使用本腳本窮舉設備ip。
$ cat ip2host.sh
#!/bin/bash
#
#ping局域網內ip,查找存在主機。
#
i=${2}
while [ ${i} -le ${3} ]
do
echo "ping -c 1 ${1}.${i}"
ping -c 1 "${1}.${i}" | grep "ttl=" |awk '{print $4}' >> ping.log
i=$(($i+1))
done
awk -F ':' '{print $1}' ping.log > ip2host.log
rm ping.log
#host 數量
count=`grep -c . ip2host.log`
echo "There are ${count} host!"
運行結果:
$ ./ip2host.sh 192.168.0 20 25
ping -c 1 192.168.0.20
ping -c 1 192.168.0.21
ping -c 1 192.168.0.22
ping -c 1 192.168.0.23
ping -c 1 192.168.0.24
ping -c 1 192.168.0.25
There are 3 host!
$ cat ip2host.log
192.168.0.20
192.168.0.22
192.168.0.23