使用 Perl 远程登录到 OLT MA5608T

问题描述

我需要有关 Net:Telnet 的帮助。尝试连接华为OLT M5608终端。从控制台使用普通 telnet 时它工作正常。我可以连接并发出命令,但是当我从 Perl 尝试相同的操作时,它无法连接,只是等待超时并显示提示不匹配:“模式匹配超时”。
我尝试了所有可能的提示,但都没有成功。

从控制台它工作正常:

telnet xxx.xxx.xxx.xxx
Trying xxx.xxx.xxx.xxx...
Connected to xxx.xxx.xxx.xxx.
Escape character is '^]'.
>>User name:root

>>User password:
Huawei Integrated Access Software (MA5608T).
...

这是我的示例代码

use Net::Telnet ();
$remote = new Net::Telnet (Timeout => 5,Errmode => 'return',Dump_Log => 'log.txt');
$remote->open("xxx.xxx.xxx.xxx") or die $remote->errmsg;
$remote->waitfor('/>>User name: $/i') or die $remote->errmsg;
$remote->print("root") or die $remote->errmsg;
$remote->waitfor('/>>User password: $/i') or die $remote->errmsg;
$remote->print("<;-)>") or die $remote->errmsg;
$remote->waitfor('/\$ $/') or die $remote->errmsg;
$remote->print("display idle-timeout") or die $remote->errmsg;
($output) = $remote->waitfor('/\$ $/') or die $remote->errmsg;
print $output;

和 cat log.txt

< 0x00000: ff fb 01 ff  fb 03                                  ▒▒.▒▒.
> 0x00000: ff fd 01 ff  fd 03                                  ▒▒.▒▒.
< 0x00000: 0d 0a 3e 3e  55 73 65 72  20 6e 61 6d  65 3a        ..>>User name:

原因是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...