服务器总是一下子买了很多的段的 ip. 通过绑定后, 也不知道这些 ip 是否绑定成功, 所以就写了一个 shell 脚本, 把 ip 输好, 批量 ping 一下, 看是不是都能 ping 通.
脚本如下:
此外. 还有一个 ip 文件, 里面放的都是 ip 名为 allip
我们来运行一下, 看一下结果:
除了 8.8.% 他显示 ping 其他 失败. 的确这些 ip 是 ping 不通. 好了. 效果就这些, 我们来看一下他的原理
先贴一下程序:
- #! /bin/bash
- for i in `cat allip`
- do
- ping=`ping -c 1 $i|grep loss|awk '{print $6}'|awk -F "%" '{print $1}'`
- if [ $ping -eq 100 ];then
- echo ping $i fail
- else
- echo ping $i ok
- fi
- done
程序很简单, 现在来挨个解释一下
- #! /bin/bash
- for i in `cat allip` #这个是逐个读取 allip 文件里的 ip
- do
- ping=`ping -c 1 $i|grep loss|awk '{print $6}'|awk -F "%" '{print $1}'`
- # 上面一行是对读出来的 ip ping 一次, 看是否 ping 通. 并取出 loss 的百分比的值 也就是掉包的值 , 看是否掉包
- if [ $ping -eq 100 ];then #比较一下, 看掉包的值是不是 100, 如果是 100 就是全部掉包, 那就是没 ping 通, 那就显示 ping ip fail, 如果不等于 100 的话, 就 ping 通了, 就显示 Ping ip OK
- echo ping $i fail
- else
- echo ping $i ok
- fi
- done
结束, 小工具挺有用的, 有时那么多的 ip, 一次性就 ping 完了.
来源: http://www.bubuko.com/infodetail-3101131.html