Net :: Telnet中的模式匹配cmd命令

时间:2014-05-12 03:04:10

标签: regex perl perl-module

我正在尝试使用Net :: Telnet

中的cmd命令
@lines = $telnet -> cmd(String =>'show run', Prompt => "/patternA/ $/ /patternB/");

我的目的是捕获类似patternA的内容,然后是新行,然后是模式B.当我使用上面的cmd命令时,它会给出错误的匹配操作符错误。 什么是实现它的正确方法?

谢谢!

1 个答案:

答案 0 :(得分:0)

-prompt内的cmd只是一种模式。

您可以尝试创建多行模式,但我无法确认这是否有效:

@lines = $telnet->cmd(String => 'show run', Prompt => '/patternA\npatternB $/');

另外,如Net::Telnet #What To Know Before Using

中所述
  

prompt()waitfor()构建匹配运算符参数时,请始终使用单引号而不是双引号来避免意外的反斜杠解释(例如'/bash\$ $/'