17 años en Internet

19 enero 2011

Y ahora a localizar vía shell script

He completado mi script de ayer escribiendo en el cuerpo del e-mail información referente a la IP pública del equipo y los datos de su localización. Para ello primero he creado el script /usr/bin/localizar.sh:
#!/bin/bash
cd /tmp
wget checkip.dyndns.org -O index.html >/dev/null 2>/dev/null
d=$(grep -Eo '[0-9\.]+' index.html)
rm index.html
echo "Direccion IP publica: $d"
wget http://whatismyipaddress.com/ip/$d -O index.html > /dev/null 2>/dev/null
ciudad=$(grep City index.html | awk -F '<'{ print $5}' | grep -Eo '[a-Z\.]+' | tail -1)
region=$(grep "State/Region" index.html | awk -F '<' '{ print $5}' | grep -Eo '[a-Z\.]+' | tail -1)
pais=$(grep Country index.html | awk -F '<' '{ print $5}' | grep -Eo '[a-Z\.]+' | tail -1)
operadora=$(grep Organization index.html | awk -F '<' '{ print $22}' | grep -Eo '[a-Z\.]+' | tail -1)
echo "Localizacion: $ciudad ($region, $pais)"
echo "Operadora: $operadora"
rm index.html
cd - > /dev/null

Después he reemplazado la línea de mi script /usr/bin/fotografiar.sh:
uuencode foto.jpeg foto.jpeg | mailx -s "Acceso de $USER en $HOSTNAME" comandantecobra@gmail.com
Por esta otra:
(localizar.sh && uuencode foto.jpeg foto.jpeg) | mailx -s "Acceso de $USER en $HOSTNAME" comandantecobra@gmail.com

El resultado queda cuco :)

No hay comentarios:

Publicar un comentario

Si te ha gustado la entrada o consideras que algún dato es erróneo o símplemente deseas dar algún consejo, no dudes en dejar un comentario. Todo feedback es bienvenido siempre que sea respetuoso. También puedes contactarme vía Twitter @Hamster_ruso si lo consideras necesario.