我正在尝试编写一个 python 脚本来访问多个 Cisco 网络设备。遗憾的是,这些设备的设置不一样,有些设备的横幅出现在奇怪的地方。这些横幅可能具有与提示可能具有的某些相同内容的模式。
例如,一旦我登录,我希望得到一个提示'hostname#'
,所以我基本上使用 apexpect('#')
我可能必须处理某些其他提示,例如'hostname>'
as well so pexpect('>')
works。我真的会有一个可能的提示列表,加上一个超时并采取相应的行动。
这很好,除非横幅出现在中间某处。例如,登录后可能会出现一个横幅,上面写着 ## Welcome ##
并且在提示之前就在那里。我相信如果我可以告诉 pexpect 忽略正则表达式#.*\r
我会很好,但我不确定这是可能的。是否可以让 pexpect 忽略一个字符串,或者有更好的方法来解决这个问题?