脚本宝典收集整理的这篇文章主要介绍了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查询IP归属地内容请搜索脚本宝典以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本宝典!
以上是脚本宝典为你收集整理的Shell调用curl实现IP归属地查询的脚本全部内容,希望文章能够帮你解决Shell调用curl实现IP归属地查询的脚本所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。