shell编程(1)
一、尝试ping
题目第一项要求是检验自己主机所在网段有多少主机连通。于是我写的shell程序如下:
#!/bin/bash i=1; count=0; while [ $i -lt 255 ] do ping -c 2 -i 0.3 -w 1 10.135.0.$i &>/dev/null if [ $? -eq 0 ] then echo "110.135.0.$i is up" let count++; fi let i++; done echo $count;
此处因为不知道自己所在的网段子网掩码究竟有多少位,所以我先假设自己在一个C类地址中,对主机号0-254的主机进行了ping操作。操作结果如下
所在网段中有14个主机可以ping通。
二、查询主机名
为了获取连通主机的主机名,我使用了指令nmblookup -A ,通过能够ping通的ip反向解析出主机名。
nmblookup -A 110.135.0.$i
篇幅限制,这里就放一个ip查询的结果作为展示。
三、获取响应时间
这一步为了查询连接响应时间,在shell程序中加上一行如下代码即可
ping -a -c 2 110.135.0.$i
运行结果如下:
篇幅限制,这里也只举一例。