这里直接给出脚本以及运行的效果图,主要推断了一下cdn然后能够直接过滤url。默认就是dig +域名 +short。

脚本qdig(随便能够取一个名字)例如以下:

#!/usr/bin/env bash
c=$(echo $1 | awk -F '://' '{print $1}')
if [ "$c" = "http" ] || [ "$c" = "https" ]; then
b=$(echo $1 | awk -F '://' '{print $2}' | awk -F '/' '{print $1}')
fi
if [ "$c" != "http" ] && [ "$c" != "https" ]; then
b=$(echo $1 | awk -F '/' '{print $1}')
fi a=$(dig $b +short) if [ "$a" = "" ]; then
echo ""
echo 'dig' $b '+short'
echo '域名还没有进行cname'
exit 1
else
echo ""
echo 'dig' $b '+short'
echo "$a"
echo ""
echo "$a" | awk -F "." '{if($(NF-2)=="wscdns"||$(NF-2)=="ourglb0"||$(NF-2)=="cdn20"||$(NF-2)=="lxdns"||$(NF-2)=="ourwebcdn"){print "网宿"}}'
echo "$a" | awk -F "." '{if($(NF-2)=="cdnga"||$(NF-2)=="cdngc"||$(NF-2)=="cdnetworks"||$(NF-2)=="gccdn"){print "同兴"}}'
echo "$a" | awk -F "." '{if($(NF-2)=="fastcdn"||$(NF-2)=="tlgslb"){print "帝联"}}'
echo "$a" | awk -F "." '{if($(NF-2)=="ccgslb"){print "蓝汛"}}'
echo "$a" | awk -F "." '{if($(NF-2)=="qingcdn"){print "白山"}}'
echo "$a" | awk -F "." '{if($(NF-2)=="hadns"||$(NF-2)=="cloudcdn"||$(NF-2)=="hacdn"||$(NF-2)=="fastwebcdn"||$(NF-2)=="cloudglb"){print "快网"}}'
echo "$a" | awk -F "." '{if($(NF-2)=="cdntip"||$(NF-2)=="qq"||$(NF-2)=="dnsv1"){print "腾讯"}}'
echo "$a" | awk -F "." '{if($(NF-2)=="lecloud"||$(NF-2)=="letv"||$(NF-2)=="leletv"){print "乐视"}}'
fi

完毕后将qdig增加环境变量。运行效果例如以下qdig链接和qdig域名效果一样:

~/tools » qdig http://static.alphadn.com/xxx/xxx.jpg                                                                                

dig static.alphadn.com +short
7fv9ur3h.https.z0.glb.qiniudns.com.
static.alphadn.com.cloudglb.com.
c06.i06.ctljs.lv3.cloudglb.com.
222.186.20.123
222.186.20.109
58.220.2.10
58.220.2.124 快网
快网

Linux---有关dig命令的有用脚本的更多相关文章

  1. Linux下dig命令使用

    Dig简介:   Dig是一个在类Unix命令行模式下查询DNS包括NS记录,A记录,MX记录等相关信息的工具.由于一直缺失Dig man page文档,本文就权当一个dig使用向导吧.   Dig的 ...

  2. linux命令总结之dig命令

    Dig简介: Dig是一个在类Unix命令行模式下查询DNS包括NS记录,A记录,MX记录等相关信息的工具.Dig的源码是ISC BIND大包的一部分,但是大多编译和安装Bind的文档都不把它包括在内 ...

  3. 如何在java程序中调用linux命令或者shell脚本

    转自:http://blog.sina.com.cn/s/blog_6433391301019bpn.html 在java程序中如何调用linux的命令?如何调用shell脚本呢? 这里不得不提到ja ...

  4. Linux下解析域名命令-dig 命令使用详解

    Linux下解析域名除了使用nslookup之外,开可以使用dig命令来解析域名,dig命令可以得到更多的域名信息.dig 命令主要用来从 DNS 域名服务器查询主机地址信息.dig的全称是 (dom ...

  5. PHP 命令行模式实战之cli+mysql 模拟队列批量发送邮件(在Linux环境下PHP 异步执行脚本发送事件通知消息实际案例)

    源码地址:https://github.com/Tinywan/PHP_Experience 测试环境配置: 环境:Windows 7系统 .PHP7.0.Apache服务器 PHP框架:ThinkP ...

  6. Linux命令之dig命令挖出DNS的秘密

    === [初次见面] 我相信使用nslookup的同学一定比使用dig的同学多,所以还是有必要花些时间给大家介绍一下dig的. dig,和nslookup作用有些类似,都是DNS查询工具. dig,其 ...

  7. nslookup、dig命令Linux安装包

    linux下提供nslookup,dig命令的软件就是 bind-utils yum install bind-utils -y

  8. 云服务器 ECS Linux 系统下使用 dig 命令查询域名解析

    云服务器 ECS Linux 系统可以使用通常自带的 dig 命令来查询域名解析情况.本文对此进行简要说明. 查询域名 A 记录 命令格式: dig <域名> 比如,查询域名 www.al ...

  9. linux dig 命令使用

    linux dig 命令使用方法 2018.04.20 15:47 43101浏览   dig 命令主要用来从 DNS 域名服务器查询主机地址信息. 查询单个域名的 DNS 信息 dig 命令最典型的 ...

随机推荐

  1. COGS.1200 ganggang的烦恼

    背景 Zhang Gangrui 年纪大了,记性不好,保险箱的密码记不住了,他只记得密码是一个数的阶乘各个位的数相加的和,最后还有个T或F,代表这个数是否为素数,正好,你到他家去了,他请你帮他这个忙, ...

  2. Android(java)学习笔记192:ContentProvider使用之虚拟短信

    1.虚拟短信应用场景:   急着脱身?应付老婆(老公.男女朋友查岗)?   使用虚拟通话短信吧.您只需通过简单设置,软件就会在指定时间会模拟一个“真实”来电或短信来迷惑对方,通过“真实”的证据让对方相 ...

  3. 【东软实训】SQLselect及其相关操作

    SQL select 及相关操作 SQL是用于访问和处理数据库的标准的计算机语言,我们所使用的的是Oracle SQL 一个数据库通常包含一个或多个表,每个表有一个名字表示,下图即为一个名为“emp” ...

  4. python selenium等待特定网页元素加载完毕

    selenium等待特定元素加载完毕 is_disappeared = WebDriverWait(driver, 8, 0.5, ignored_exceptions=TimeoutExceptio ...

  5. 诊断:MRP0: Background Media Recovery terminated with error 1111

    表现: 灾备环境,无法继续应用日志. 日志: MRP0: Background Media Recovery terminated with error 1111 Fri Jan 18 15:55:2 ...

  6. Format 格式化函数

    转自:老百姓 Format是一个很常用,却又似乎很烦的方法,本人试图对这个方法的帮助进行一些翻译,让它有一个完整的概貌,以供大家查询之用: 首先看它的声明:function Format(const ...

  7. 用ffmpeg切割音频文件

    ffmpeg -i audio.wav -f segment -segment_time -c copy audio%02d.wav "-segment_time 60" 表示每6 ...

  8. Python之面向对象上下文管理协议

    Python之面向对象上下文管理协议 析构函数: import time class Open: def __init__(self,filepath,mode='r',encode='utf-8') ...

  9. Python中接收用户的输入

    一.如何去接收用户的输入?使用函数 input() 函数 input() 让程序暂停运行,等待用户输入一些文本,获取用户的输入后,Python将其存储到一个变量中,以方便后期使用. name = in ...

  10. 【03】AJAX 向服务器发送请求

    AJAX 向服务器发送请求   创建 XMLHttpRequest 对象后,就可以向服务器发送请求了. XMLHttpRequest 对象的 open() 方法和 send() 方法用来向服务器发送请 ...