Lo que yo pretendo es que al abrir el programa se introduzca la dirección IP o Hostname, user y password, y el programa haga un simple Dir o Ls según sea la plataforma en la que nos encontremos.
- Código: Seleccionar todo
#Telnet.pl
#Coded by RevangelyonX
use Net::Telnet;
#Pidiendo datos al usuario necesarios para la conexión.
print "Introduzca Hostname o IP: \n";
$host = <STDIN>;
chop $host;
print "Introduzca Username: \n";
$user = <STDIN>;
chop $user;
print "Introduzca Password: \n";
$pass = <STDIN>;
chop $pass;
#Conexión con el modulo Net::Telnet
$t = new Net::Telnet (Timeout => 10,
Prompt => '/bash\$ $/');
$t->open("$host");
$t->login($user, $pass);
@lines = $t->cmd("dir");
print @lines;
Bien pues todo va bien, hasta que empieza la conexión, tarda un poco y me dice lo siguiente:
timed-out waiting for command prompt at telnet.pl line 17.
La línea es cuando se conecta a $host.
Miré en Cpan, y no comprendo el error, ya que está todo marcado igual.
Lo que me extraña, es la línea Prompt => '/bash\$ $/'");
bash es una shell de Nix y no de Windows, entonces lo cambié por cmd y el mismo error, también probé con cmd.exe y más de lo mismo....
Gracias por sus respuestas.
EDITADO: He buscado por el foro (perdón por no haberlo hecho antes, y bueno parece que el problema está en el prompt.)
DEspués de leer éste post: viewtopic.php?p=5054&highlight=#5054
Creo que no hay nada que hacer con windows ¿Verdad?