我正在尝试使用 python3 自动化一些远程登录操作。所以我开始使用 telnetlib 中的构建(不是 pexpect)。
实际上到目前为止一切正常,但我不完全理解 read_until 是如何工作的 - 实际上文档说你可以设置一个超时,如果没有找到搜索字符串,超时会发回一个空字节值,或者如果有另一个值那就是一个可以存储为返回值的!
那有意义吗 ?!
如果我想 read_until 某个值 - 我如何发现该值确实是函数读取的值。我也不知道如何检查是否超时。
我现在的解决方法是:
output = telnet.read_until(str.encode(hostname), 3)
if re.search(hostname, bytes.decode(output), re.IGNORECASE):
#do something when the output matches the searchstring
else:
#stop the function
但这对我来说没有任何意义,所以也许你现在是一个更好的解决方案