“处理”--更多--”;在perl中使用Expect.pm

“处理”--更多--”;在perl中使用Expect.pm,perl,expect.pm,Perl,Expect.pm,我有一个设备的show命令,它的Mac地址是我用perl执行的。 命令的输出超过100行,底部有--more--。 我能够在第一次出现之前捕获所有输出内容--更多--。 但在那之后就不行了。 我尝试了while循环,但它对我不起作用。 请帮助我解决此问题。我怀疑您正在连接Cisco设备。如果是,请在登录到节点时发出“term len 0”。如果是juniper,则在每个命令末尾添加“| no more” 我怀疑你正在连接Cisco设备。如果是,请在登录到节点时发出“term len 0”。如果是

我有一个设备的show命令,它的Mac地址是我用perl执行的。 命令的输出超过100行,底部有
--more--
。 我能够在
第一次出现之前捕获所有输出内容--更多--
。 但在那之后就不行了。 我尝试了while循环,但它对我不起作用。
请帮助我解决此问题。

我怀疑您正在连接Cisco设备。如果是,请在登录到节点时发出“term len 0”。如果是juniper,则在每个命令末尾添加“| no more”

我怀疑你正在连接Cisco设备。如果是,请在登录到节点时发出“term len 0”。如果是juniper,则在每个命令末尾添加“| no more”

您使用的是Perl模块还是程序?在Perl程序中,我使用的是Expect,即使用Expect;您使用的是Perl模块还是程序?在Perl程序中,我使用的是Expect,即使用Expect;是的,我正在使用思科设备。我正在使用带有begin/include的show命令,即show arp | begin mac地址。我对这一点还不熟悉。请您给出一些如何在perl中设置终端长度的示例。好的,“term len 0”将解决您的问题。登录到该框后发出该命令。然后,每个命令都会显示整个文本。很好,我发现Cisco的命令会混淆输出(或者可能只是在XR上使用实用程序)。有时候,最好先做一个“show arp”,然后在exp_before()中找到所需的行。是的,我正在使用cisco设备。我正在使用带有begin/include的show命令,即show arp | begin mac地址。我对这一点还不熟悉。请您给出一些如何在perl中设置终端长度的示例。好的,“term len 0”将解决您的问题。登录到该框后发出该命令。然后,每个命令都会显示整个文本。很好,我发现Cisco的命令会混淆输出(或者可能只是在XR上使用实用程序)。有时候,最好只做一个“show arp”,然后在exp_before()中使用find the line。