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歸屬地的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歸屬地內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: