LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1548|回复: 4

用脚本程序ping多个ip,不通的如何自动跳出??

[复制链接]
发表于 2003-3-15 20:22:03 | 显示全部楼层 |阅读模式
我想编一个测试多个ip响应速度的脚本
发表于 2003-3-15 23:26:02 | 显示全部楼层
我有个办法,可能比较愚昧

可以给每个PING命令加条件判断,GREP它的执行结果,如果结果正常,继续。不正常,跳出,再ECHO一下,重定向到一个ERROR.ping文件中。

应该可以了吧:)
发表于 2003-3-15 23:50:58 | 显示全部楼层
多个IP建个数组呀~!然后像楼上说的一样,挨个PING去,~~然后计算每个PING结果所用的时间,sjqu兄,你可以把你的脚本帖到[脚本原创区],让兄弟们讨论;)
 楼主| 发表于 2003-3-16 20:03:35 | 显示全部楼层
我并不是要计算时间,比如我ping 192.168.0.235 可是这台机子不开机,ping命令会在这里停留很长时间我可不想等!当然不是局域网内的ip了,局域网内的反应速度要快一些
发表于 2003-3-24 13:08:41 | 显示全部楼层
我以前管理好几台主机时写了这一方面的shell, 请参考一下,效率因该比较好
#! /bin/sh

while read i; do
        ip=`echo $i | awk '{print $1}'`
        node=`echo $i |awk '{print $2}'`
        ping -c1 -f -w2 ${ip} 2>&1>/dev/null
        if [ $? -ne 0 ]; then
                echo -e "$ip\t $node\t offline"
        else
                echo -e "$ip\t $node\t online"
        fi
done < ip

文件ip的内容
192.168.10.1     srv1
192.168.10.2     srv2
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表