经常会遇到需要查找ip归属地,尤其是批量查找的时候,使用脚本就比较方便了,在网上找到一个,自己更改了一下,修复了在linux下出现中文乱码的问题,
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
#!/bin/bash
#Purpose: 查找ip地址所在地
ipp (){
exec
< $1
while
read
a
do
sring=`curl -s
"http://ip138.com/ips138.asp?ip=${a}&action=2"
| iconv -f gb2312 -t utf-8|
grep
'<ul class="ul1"><li>'
|
awk
-F
'[<> ]+'
'{print substr($7
,7)}'`
echo
$a $sring
done
}
case
$1
in
-f)
shift
ipp $1
;;
-i)
shift
sring=`curl -s
"http://ip138.com/ips138.asp?ip=${1}&action=2"
| iconv -f gb2312 -t utf-8 |
grep
'<ul class="ul1"><li>'
|
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
|
本文转自 boy461205160 51CTO博客,原文链接:http://blog.51cto.com/461205160/1738669