shell脚本实现从的一堆域名中找出哪些域名还存在解析记录 记录生成需求:从IDC机房提供的一堆域名中找出哪些域名还存在解析记录
先排序去除重复的域名:
cat 2.txt |sort -rn|uniq -c|awk '{print $2}' >test
执行脚本sh 2.sh m 或者是sh 2.sh e 或者sh 2.sh 未知 对应生成文件 m.log e.log wujilu.log
[root@intf-06 ~]# cat 2.sh
#!/bin/sh
list=$(cat /root/test)
for n in $list
do echo $n|tee -a 1.log&& ping -c1 -i 0.1 $n -q 2>&1 |tee -a 1.log
done
if [ $1 == "m" ];then
sed -e '/Done/{d}' -e '/\[1\]/{d}' 1.log|grep -B 1 'PING'|grep "^$1" >m.log
echo "" >1.log
elif [ $1 == "e" ];then
sed -e '/Done/{d}' -e '/\[1\]/{d}' 1.log|grep -B 1 'PING'|grep "^$1" >e.log
echo "" >1.log
elif [ $1 == "未知" ];then
sed -e '/Done/{d}' -e '/\[1\]/{d}' 1.log|grep "$1"|awk -F '[ :]+' '{print $2}' >wujilu.log
echo "" >1.log
fi
获取的结果如下:
以m开头的存在解析记录的二级域名
[root@intf-06 ~]# cat m.log
m.qxwfc.cn
m.qldua.cn
m.wstzk.cn
m.gsnon.cn
m.fzhxzm.cn
m.ew740.cn
以e开头的存在解析记录的二级域名
[root@intf-06 ~]# cat e.log
e.gsnon.cn
e.fzhxzm.cn
e.ew740.cn
不存在解析记录的二级域名
[root@intf-06 ~]# cat wujilu.log
m.0v43q.cn
e.x51se.cn