伺服器總是一下子買了很多的段的ip。通過繫結後,也不知道這些ip是否繫結成功,所以就寫了乙個shell指令碼,把ip輸好,批量ping一下,看是不是都能ping通。
指令碼如下:
此外。還有乙個ip檔案,裡面放的都是ip 名為allip
我們來執行一下,看一下結果:
除了8.8.% 他顯示 ping 其他 失敗。的確這些ip是ping不通。好了。效果就這些,我們來看一下他的原理
先貼一下程式:
#! /bin/bash
for i in `cat allip`
doping=`ping -c 1 $i|grep loss|awk ''|awk -f "%" ''`
if [ $ping -eq 100 ];then
echo ping $i fail
else
echo ping $i ok
fidone
程式很簡單,現在來挨個解釋一下
#! /bin/bash
for i in `cat allip` #這個是逐個讀取allip檔案裡的ip
doping=`ping -c 1 $i|grep loss|awk ''|awk -f "%" ''`
#上面一行是對讀出來的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
fidone
結束,小工具挺有用的,有時那麼多的ip,一次性就ping完了。
本文出自 「運維人生」 部落格,請務必保留此出處 ###尊重原創
編寫指令碼批量 ping
如果有很多 ip 或者網域名稱,我們要判斷哪些能 ping 通,採用自動化指令碼特別方便。先看指令碼,如下所示 bin bash 功能,ping檔案ip.lst中的ip,成功的輸出到ping ok.lst檔案,失敗的輸出到ping fail.lst檔案。10.1.1.1呼叫該指令碼 ping ip....
批量ping指令碼
ping c 1 i表示 只pin g一次。命令解釋 c計 數 co unt 1表示 一次,i 表示只ping一次。命令解釋 c計數 count 1表示一次,i表示只pi ng一次 命令解 釋 c 計數 c ount 1表 示一次,i是ip。grep loss 通過管道的方式查詢ping後的結果含有...
批量Ping執行Bash指令碼
bin bash ping batch script 連線超時時間 tmout 3 最大執行緒數 max thread 4000 保留記憶體大小 min mem 400 預設ip配置,可通過 r ip ip指定,格式 ping batch.sh r 192.168.1.1 192.168.2.254...