Título: Ayuda con Perl - Iniciar desde X línea Publicado por: knk.ink en 9 Octubre 2006, 18:06 pm Hola soy nuevo en perl, antes programaba en visual basic pero quise ir mas allá
tengo una duda con perl, die "\nError $!\n"; } Quiero que si hay un error en la aplicación, el programa vuelva a iniciar desde 0, o que vuelva a tratar desde X linea. Me explico? saludos. Título: Re: Ayuda con Perl ! Publicado por: Hendrix en 9 Octubre 2006, 20:17 pm Lo podrias ahcer kon un goto....un ejemplo de die es este:
Código: if ($num != 18) { Salu2 Título: Re: Ayuda con Perl ! Publicado por: knk.ink en 10 Octubre 2006, 10:32 am Gracias por responder Hendrix.
El "script" en perl que estoy haciendo funciona con sockets, y hay un IF que conecta el socket, y hay un "die" que muestra el error, por si falla el socket Lo que quiero es que si el socket falla, y vaya a "die".., el "die" vuelva a inicar la aplicación para que el socket vuelva a conectar e intente de nuevo ó que empieze desde X linea. Es que (en el IF) si hay un error con el socket y no conecta ya sea por que no esta conectado a internet, pues te va a enviar a "die" y supongamos que "die" te muestra el mensaje que "no estas conectado a internet", lo que quiero es que en lugar de mostrar cualquier mensaje, intente de nuevo conectarse, como digo.. reiniciando la apliacación o que empieze desde X linea; Citar "si hay un error con el socket, vuelve a X linea ó inicia la aplicación" Ojala me entiendan Saludos. Título: Re: Ayuda con Perl - Iniciar desde X línea Publicado por: devcode en 12 Octubre 2006, 01:51 am use IO::Socket;
use strict; my $sock; while(1) { $sock = IO::Socket::INET->new(PeerAddr => 'host.com', PeerPort => 80, Proto => 'tcp'); last if $sock; } Título: Re: Ayuda con Perl - Iniciar desde X línea Publicado por: dxr en 16 Octubre 2006, 17:47 pm yo meteria un sleep ya que sino puede ser un poco pesado...
Título: Re: Ayuda con Perl - Iniciar desde X línea Publicado por: Off en 13 Diciembre 2006, 02:50 am Hola soy nuevo en perl, antes programaba en visual basic pero quise ir mas allá tengo una duda con perl, die "\nError $!\n"; } Quiero que si hay un error en la aplicación, el programa vuelva a iniciar desde 0, o que vuelva a tratar desde X linea. Me explico? saludos. En Visual Basic, se usaria "Manejo de Errores" [usando Resume Next, GoTo, etc] :-X Pero en Perl podrias, como dijeron arriba, hacer un "If" con el resultado de la conexion del socket [es decir, comprobar si funciono o no] y a partir de ese resultado reconectar el socket (deberia ser mas facil, maldito Larry Wall :-X) Ya de paso żno existen funciones similares a Resume Next [Visual Basic] en Perl? :huh: Seria mas productivo y efectivo [tal vez] hacerlo de la ultima manera (y mas corto, por supuesto) >:D |