前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >shell脚本 查询IP所在地

shell脚本 查询IP所在地

原创
作者头像
陈不成i
修改2021-06-23 17:30:20
1.2K0
修改2021-06-23 17:30:20
举报
文章被收录于专栏:ops技术分享ops技术分享

一.简介

源码

代码语言:javascript
复制
#!/bin/bash
# 作者:日行一善 <qq:1969679546> <email:1969679546@qq.com>
# 官网:www.linkops.cn
#
# 日期:2017/10/20
# 介绍:根据IP地址查询所在地
#
# 适用:centos6+
# 语言:中文
#
# 注意:需要联网


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 $4}' | awk -F':' '{print $2}'`
        echo $a $sring
done
}


cha() {
srin=`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 $4}' | awk -F':' '{print $2}'`
echo $1 $srin
}


firewal() {
for i in `lastb|awk '{print $3}' | sort | uniq |egrep -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'`
do
        sri=`curl -s "http://ip138.com/ips138.asp?ip=${i}&action=2"| iconv -f gb2312 -t utf-8|grep '<ul class="ul1"><li>' |awk -F '<' '{print $4}' | awk -F':' '{print $2}'`
        echo $i $sri
done
}


if [ "$1" == "-f" ];then
        ipp $2
elif [ "$1" == "-i" ];then
        cha $2
elif [ "$1" == "-q" ];then
        firewal
else
        echo "-f + 文件   批量显示ip所在地"
        echo "-i + ip地址 显示ip所在地"
        echo "-q          显示尝试登陆此服务器的ip所在地"
fi

日期:2017/10/20 介绍:根据IP地址查询所在地,可根据配置文件或lastb批量查询

效果图:

二.使用

适用:centos6+ 语言:中文 注意:需要联网

下载 wget https://raw.githubusercontent.com/goodboy23/shell/master/jobs/ip_location.sh

执行 bash ip-location -i 8.8.8.8

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.简介
  • 二.使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档