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!
推薦閱讀:
- Shell編程中Shift的用法小結
- linux下shell常用腳本命令及有關知識
- Shell獲取當前正在執行腳本的絕對路徑
- Centos7 Shell編程之正則表達式、文本處理工具詳解
- shell腳本讀取命令行參數的實現