用shell脚本批量ping域名

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用shell脚本批量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 "解析地址		域名">>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		$name">>res_ok.txt
    else
            echo "$name">>res_error.txt
    fi
done

注:脚本后直接跟域名文本,文本中一行包含一个域名,运行结果显示在res_ok.txt和res_error.txt中。

以上是关于用shell脚本批量ping域名的主要内容,如果未能解决你的问题,请参考以下文章

shell脚本实现批量解析域名IP地址(支持多DNS)

一个简单的shell小脚本,批量ping主机ip的存活状态

shell脚本批量获取内网主机的MAC地址

想写一个bat脚本ping多个ip地址

linux 求助shell脚本 ping命令延迟超过100ms的包就发邮件 恢复正常也发个邮件 之后不用发

批量检测服务器能否ping通和硬盘容量状态的一个脚本