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.590 ]
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.
#!/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}"
}
Front-end para backup em CDRW e DVDRW
Relatório analitico de VLANs no PHP-IPAM
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Instalar Linux em notebook Sony Vaio VPCEG13EB (13)
Vou destruir sua infância:) (7)
Interface gráfica com problema (0)









