• Publicidad

Necesito ayuda para ejecutar un script de Perl en SuSE 11

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Código

Notapor salvadorva » 2009-04-24 00:13 @050

Sí, es cierto. Aquí está el código, la dirección del servidor es una máquina que puso el ingeniero para que hiciéramos las pruebas,

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!usr/bin/perl
use Net::Telnet();
$t =new Net::Telnet();
$user="lenguajes";
$pass="lenguajes123";
$t->open("200.6.192.83");
$t->waitfor("/login/");
$t->printf($user);
$t->waitfor("/password/");
$t->printf($pass);
$t-> print ("su -");
$t-> waitfor ("/password/");
$t-> print ("lenguajes123");
$t-> waitfor ("/#/");
@line=$t->cmd("history");
Coloreado en 0.004 segundos, usando GeSHi 1.0.8.4


y el error es este:
Código: Seleccionar todo
salva@linux-1l91:~> perl /proyecto/historial.pl
pattern match timed-out at /proyecto/historial.pl line 9


Si pudieras ayudarme, muchas gracias.
salvadorva
Perlero nuevo
Perlero nuevo
 
Mensajes: 8
Registrado: 2009-04-21 13:23 @599

Publicidad

Notapor explorer » 2009-04-24 01:29 @103

En estos foros hay algunos hilos dedicados a Net::Telnet y otros módulos que hablan con dispositivos (enrutadores, concentradores,...). Usa la caja de búsqueda.

En los códigos propuestos se ponen ejemplos de waitfor(), en donde se espera por una expresión regular.

Yo primero cambiaría todas las comillas dobles por simples, según recomienda la documentación de Net::Telnet.

Otro cambio sería cambiar las líneas
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$t->waitfor("/login/");
$t->printf($user);
$t->waitfor("/password/");
$t->printf($pass);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
por
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$t->login($user,$pass);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


Te recomiendo una lectura cuidadosa de Net::Telnet. Y revisar otros módulos de la familia, como por ejemplo Net::Telnet::Wrapper. Algunos de ellos pueden ajustarse al tipo de máquina a la que te quieres conectar, y simplificar el diálogo con ellas.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

si eso era

Notapor salvadorva » 2009-04-24 09:33 @439

Gracias. Al cambiar los waitfor() por login() funciona. Muchas gracias.
salvadorva
Perlero nuevo
Perlero nuevo
 
Mensajes: 8
Registrado: 2009-04-21 13:23 @599

Anterior

Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

cron