get-geo2 - localiza o endereço de um IP/HOST no Google Maps

Publicado por Pedro Robson Leão 02/05/2009 (última atualização em 20/10/2009)

[ Hits: 6.403 ]

Download get-geo2.sh




O script é baseado no get-geo original:

http://get-geo.sourceforge.net/

De Vinicius Della Libera <artedogesto@gmail.com>

Você passa para o script o HOST ou IP e ele retorna as coordenadas para consulta no Google Maps.

  



Esconder código-fonte

#!/bin/bash 

# Baseado no script get-geo[http://get-geo.sourceforge.net/] de Vinicius Della Libera[artedogesto@gmail.com]
#
# By Pedro Robson Leao - pleao@gmail.com
#
# O site tem uma limitacao diaria de acesso por IP por isto o script pode nao conseguir consular informacoes as vezes

# URL to search information
URL="http://www.maxmind.com/app/lookup_city";

# HOST informe host when call program
HOST=${1:-"get-geo.sf.net"};

# Set field sparetor
OIFS="${IFS}";
IFS="£";

LATITIDE=;
LONGITUDE=;

# set header information
HEADER=( "Hostname" "CountryCode" "CountryName" "Region" "RegionName" "City" "PostalCode" "Latitude" "Longitude" "ISP" "Organization" "MetroCode" "AreaCode");
# get data information
DATA=( $(echo ips="${HOST}" | lynx -source -post-data -accept_all_cookies ${URL} |grep -A 20 "${HOST}" | grep -v ^$ | sed 's/  //g' | grep "^.td" | sed 's/.td..font size=.....//g' | sed 's/..font...td./£/g' | sed 's/$/\"/g' | sed  's/^/\"/g' | tr -d '\n') );

IFS="${OIFS}";

TOT=${#HEADER[@]};

# parse fields
for ((i=0;i<TOT;i++)) {
    key="${HEADER[$i]}";
    val="${DATA[$i]}";

    val="${val//\"/}";

    [ "${key}" == "Hostname" ] && {
        echo "${val}" | egrep -q "^<" && {
            echo "Max search has expired today.";
            exit;
        }
    }

    [ ! -z "${val}" ] && [ "${val}" != "N/A" ] && [ "${val}" != "0" ] && {
# print values
        printf "%12.12s: %s\n" "${key}" "${val}";

        case ${key} in
            Latitude)  LATITUDE="${val}";;
            Longitude) LONGITUDE="${val}";;
        esac
    }
}

[ ! -z "${LATITUDE}" ] && [ ! -z "${LONGITUDE}" ] && {
# when get Latitude ande Longitude print googlemaps url.
    printf "%12.12s: %s\n" "MapsView" "http://maps.google.com/maps?q=${LATITUDE},${LONGITUDE}"
}


Scripts recomendados

Instalador .tar.bz2 com menu gráfico Zenity

Limpeza do Squid Manual

Baixar pdf do "slide share" sem login usando shell script

Instalando BeEF Framework no Ubuntu

Controle de Mac Address ISP


  

Comentários
[1] Comentário enviado por guimaluf em 28/10/2009 - 17:18h

nô cara!
vlw pela dica

MUITO bom esse script!!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts