期望期望多个模式


import pexpect # importing the python-expect
child = pexpect.spawn ('telnet x.x.x.x y')
child.expect ('Hit [Enter] to boot immediately, or space bar for command prompt.', 300)
child.send ('x20')
if child.expect ('loader>' or 'OK ', 10):
child.sendline ('boot -s')

我在这里要做的是:

  • 通过解析启动顺序自动登录到设备的单用户模式。
  • 通过控制台端口使用终端服务器连接到设备。 $ 我正在使用 pexpect,因为引导顺序是单行输出。
  • pexpect 分别为 'loader>' 或 'OK ' 工作并执行下一行,但不能一起执行。

根据手册:

expect(pattern, timeout=-1, searchwindowsize=-1, async=False)

这将通过流进行查找,直到匹配模式。模式已重载,可能需要几个 类型。模式可以是字符串类型、EOF、已编译的 re 或任何这些类型的列表。字符串将是 编译为 RE 类型。这会将索引返回到模式列表中。如果模式不是列表,则返回 成功匹配时的索引 0。
[...]

最新更新