1. 程式人生 > >用shell腳本批量ping域名

用shell腳本批量ping域名

一行 erro ping通 文件 退出 == txt 文本 批量ping

此腳本實現的功能是批量ping域名,將能ping通的和不能ping通的分類,並記錄能ping通的域名的相應解析地址

#!/bin/bash

#判斷第一個參數是否是文件,不是則退出
if [[ -f $1 ]];then
    do_name=(`cat $1`)
else
    echo "$1文件不存在"
    exit 1
fi
#設置ping的包個數
package_num=2

echo -e "解析地址\t\t域名">>res_ok.txt
echo "域名">>res_error.txt

#循環ping文件中的域名,並記錄結果
for name in ${do_name[*]}
do 
    ip=`ping -c $package_num $name | awk -F " " ‘NR==2{print $4}‘`
    if [ "$ip" != "" ];then
            echo -e "$ip\t\t$name">>res_ok.txt
    else
            echo "$name">>res_error.txt
    fi
done

註:腳本後直接跟域名文本,文本中一行包含一個域名,運行結果顯示在res_ok.txt和res_error.txt中。

用shell腳本批量ping域名