这篇文章主要讲解了“怎么用Shell脚本调用curl实现IP归属地查询”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用Shell脚本调用curl实现IP归属地查询”吧!
可用于shell环境进行IP归属地查询
#!/bin/bash #传入IP参数 IP=$1 #使用百度开放地址库 url="http://opendata.baidu.com/api.php?query=${IP}&co=&resource_id=6006&t=1412300361645&ie=utf8&oe=gbk&cb=op_aladdin_callback&format=json&tn=baidu&cb=jQuery1102026811896078288555_1412299994977&_=1412299994981" path=`curl -s $url |iconv -fgb2312 -t utf-8 |awk -F: '{ print $6}' |awk -F[\"] '{ print $2}'` echo "${IP}#${path}"
经常会遇到需要查找ip归属地,尤其是批量查找的时候,使用脚本就比较方便了,在网上找到一个,自己更改了一下,修复了在linux下出现中文乱码的问题,代码如下:
#!/bin/bash #Purpose: 查找ip地址所在地 ipp (){ exec < $1 while read a do sring=`curl -s "{a}&action=2"| iconv -f gb2312 -t utf-8|grep ' ' | awk -F '[<> ]+' '{print substr($7 ,7)}'` echo $a $sring done } case $1 in -f) shift ipp $1 ;; -i) shift sring=`curl -s "{1}&action=2"| iconv -f gb2312 -t utf-8 |grep ' ' | awk -F '[<> ]+' '{print substr($7,7)}'` echo $1 $sring ;; *) echo "[Help] $0 need -f or -i -f ------- argument is a file -i ------- argument is a IP [For example]: $0 -f filename $0 -i ipadress " ;; esac
感谢各位的阅读,以上就是“怎么用Shell脚本调用curl实现IP归属地查询”的内容了,经过本文的学习后,相信大家对怎么用Shell脚本调用curl实现IP归属地查询这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。