Shell调用curl实现IP归属地查询的脚本

 更新时间:2021年07月28日 15:20:14   作者:破影  
这篇文章主要介绍了Shell调用curl实现IP归属地查询,文中给大家提到了查询IP归属地的shell脚本,在批量查找数据的时候经常会遇到,今天给大家分享出来,需要的朋友可以参考下

可用于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归属地内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • shell高级学习之正则表达式

    shell高级学习之正则表达式

    这篇文章主要给大家介绍了关于shell高级学习之正则表达式的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用shell具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-05-05
  • Shell中通配符的具体使用

    Shell中通配符的具体使用

    本文主要介绍了Shell中通配符的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • shell中如何批量注释和取消注释

    shell中如何批量注释和取消注释

    这篇文章主要介绍了shell中如何批量注释和取消注释,帮助大家更好的理解和学习shell脚本,感兴趣的朋友可以了解下
    2020-08-08
  • shell脚本测试某网段内主机连通性

    shell脚本测试某网段内主机连通性

    这篇文章主要介绍了shell脚本测试某网段内主机连通性,需要的朋友可以参考下
    2017-10-10
  • linux shell命令行选项与参数用法详解

    linux shell命令行选项与参数用法详解

    本文介绍了linux shell中使用命令行选项与命令行参数的方法,在bash中,可以用以下三种方式来处理命令行参数,每种方式都有自己的应用场景
    2014-04-04
  • Shell脚本实现批量替换文件内容

    Shell脚本实现批量替换文件内容

    这篇文章主要介绍了Shell脚本实现批量替换文件内容,本文主要实现批量修改一个备份脚本里的备份路径,其它批量替换也可以修改使用,需要的朋友可以参考下
    2014-12-12
  • 设置Linux系统的空闲等待时间TMOUT的方法

    设置Linux系统的空闲等待时间TMOUT的方法

    下面小编就为大家带来一篇设置Linux系统的空闲等待时间TMOUT的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • Linux 按时间批量删除文件命令(删除N天前文件)

    Linux 按时间批量删除文件命令(删除N天前文件)

    这篇文章主要介绍了Linux 按时间批量删除文件的命令写法(删除N天前文件),需要的朋友可以参考下
    2017-05-05
  • python实现Linux异步epoll代码

    python实现Linux异步epoll代码

    本文提供了python实现Linux异步epoll的代码,供大家参考使用,希望对你有帮助
    2013-11-11
  • shell脚本发送http请求的实现示例

    shell脚本发送http请求的实现示例

    本文主要介绍了shell脚本发送http请求的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04

最新评论