Saiyine
Punto Com

Ejecutar comandos al cambiar la ip

2005-04-07 00:00:00

Estoy teniendo muchos problemas con mi conexión a internet, cambiandome la ip hasta 29 veces al dí­a, así­ que necesito un programa que actualice los datos de ciertas aplicaciones cada vez que haya un cambio. En el ejemplo, solo guarda la ip y la fecha en un fichero, pero se pueden añadir todo tipo de acciones en la zona central del bucle.

#!/usr/bin/perl \$interfaz="ppp0"; # O podriamos usar @ARGV[0] para obtenerlo de la linea de comandos. \$antigua=""; #Inicializamos la ip antigua a cadena vací­a while () # Ejecutar siempre { open(IFCONFIG,"ifconfig $interfaz |"); # La tuberia final indica que esperamos leer la salida del ifconfig @ip=grep /inet addr:/, <IFCONFIG>; # Filtramos las lineas del resultado que contengan "inet addr:" close(IFCONFIG); @ip[0]=~s/^.*inet addr://; @ip[0]=~s/ .*\$//; @ip[0]=~s/\\n//; # Dejamos solo la ip en la cadena if (@ip[0] ne \$antigua) # Si las ip es diferente de la que teniamos guardada hacer { system("echo -e \"".@ip[0]." ".localtime()."\" >> ".$ENV{HOME}."/.iplog"); # Añadimos la nueva ip y la fecha a un fichero en nuestro directorio personal \$antigua=@ip[0]; # Actualizamos la ip que conoce el programa } sleep(300); # Esperamos 300 segundos y a volver a empezar } exit;

Descargar: iplog.pl

Rollos antiguos

2005-06-08 00:30:00 - Chris Isaak - Wicked game.

2005-06-07 23:42:00 - Más que mil palabras.

2005-06-06 23:41:00 - Meme musical.

2005-06-06 00:24:00 - La termodinámica de las pilas galvánicas.

2005-06-05 22:39:00 - Mayo 2005.

Saiyine

Selfie of meHi! Welcome to Saiyine Punto Com where I talk about anything that goes through my mind!

Puedo prometer y prometo que a la mayor brevedad aquí irá un menú o algo asín.