• Publicidad

Problema con Net::SSH::Expect

¿Ya sabes lo que es una referencia? Has progresado, el nível básico es cosa del pasado y ahora estás listo para el siguiente nivel.

Problema con Net::SSH::Expect

Notapor rianriba » 2011-11-02 14:49 @659

Hola,

tengo que comprimir un archivo remotamente y al ser muy grande el archivo, no lo realiza.

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. my $ssh = Net::SSH::Expect->new(
  2.     host     => $ip,
  3.     password => $pass,
  4.     user     => $user,
  5.     raw_pty  => 1
  6. );
  7. my $login_output = $ssh->login();
  8. if ( $login_output !~ /Last/ ) {
  9.     &writeLog("Login has failed. Login output was $login_output");
  10.     $retorno = 'error';
  11.  
  12. }
  13. if ( $retorno eq 'success' ) {
  14.     my $gzip = $ssh->exec("gzip $path/$archivo");
  15.  
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4



Ahora, si coloco timeout (my $gzip = $ssh->exec("gzip $path/$archivo",45)), espera todo el tiempo más de lo que se demoró en zipear.

¿Cómo lo hago para que suelte cuándo termina de zipear?

Gracias.
Última edición por explorer el 2011-11-02 17:10 @757, editado 1 vez en total
Razón: Formateado de código con Perltidy y poner marcas Perl
rianriba
Perlero nuevo
Perlero nuevo
 
Mensajes: 1
Registrado: 2011-11-02 14:43 @655

Publicidad

Re: Problema con Net::SSH::Expect

Notapor salva » 2011-11-04 05:02 @251

No uses Net::SSH::Expect. El mecanismo que utiliza para saber cuándo el comando remoto finaliza es muy endeble y, como te está pasando a ti, falla con cierta frecuencia.

Net::SSH2 o Net::OpenSSH son mejores alternativas. Incluso Expect o Net::Telnet funcionan mejor.
Avatar de Usuario
salva
Perlero nuevo
Perlero nuevo
 
Mensajes: 200
Registrado: 2008-01-03 15:19 @680


Volver a Intermedio

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 11 invitados