查询linux命令位置,查看登录过Linux的IP的地理位置(基于last命令)

脚本功能:查看登录过系统的IP地址的物理位置

执行方式:bash  login_city_info_use_taobaoAPI.sh  username[liuxiao@hkecs Storage]$ bash login_city_info_use_taobaoAPI.sh root

"ip":"119.4.254.195" "country":"中国" "region":"四川" "city":"成都" "isp":"联通"

"ip":"182.149.160.103" "country":"中国" "region":"四川" "city":"成都" "isp":"电信"

"ip":"222.209.8.224" "country":"中国" "region":"四川" "city":"成都" "isp":"电信"

"ip":"222.209.8.70" "country":"中国" "region":"四川" "city":"成都" "isp":"电信"

"ip":"222.209.9.13" "country":"中国" "region":"四川" "city":"成都" "isp":"电信"

"ip":"223.85.209.56" "country":"中国" "region":"四川" "city":"成都" "isp":"移动"

[liuxiao@hkecs Storage]$

脚本内容如下:[liuxiao@hkecs Storage]$ more login_city_info_use_taobaoAPI.sh

#!/bin/bash

if [ -z "$1" ];then

echo "Usage: bash login_city_info_use_taobaoAPI.sh root"

exit 1

fi

ip_addr_list=`last | grep $1 | awk '{print $3}' | sort | uniq `

for ip_addr in ${ip_addr_list}

do

result=`curl -s http://ip.taobao.com/service/getIpInfo.php?ip=${ip_addr}`

result_code=`echo ${result} | awk -F',' '{print $1}' | awk -F':' '{print $2}'`

result_info=`echo ${result} | awk -F':{' '{print $2}' | awk -F',' '{print $1,$2,$4,$5,$7}'`

if [ "${result_code}" != "0" ];then

echo -e "\e[1;32mIP:\e[0m${ip_addr} \e[1;32mERROR\e[0m please try again! "

else

echo ${result_info}

fi

done

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值