在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
可用于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归属地的shell脚本经常会遇到需要查找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归属地内容请搜索极客世界以前的文章或继续浏览下面的相关文章希望大家以后多多支持极客世界! |
请发表评论