我正在编写一个 Python 脚本,它通过 Telnet 连接到 Linux 终端,运行许多命令并解析输出,然后根据输出运行更多命令等。
使用telnetlib很容易设置。我正在使用 write(cmd + '\n') 发送命令,然后使用 read_until(prompt) 来读取输出。我遇到的问题是这个设置似乎很慢。每个命令可能需要大约 100-200 毫秒才能运行。这使得总运行时间大约为半分钟,我觉得这太长了。
如果我使用普通的 Telnet 客户端连接到终端,我尝试运行的命令会立即返回。我还制作了一个小型 bash 脚本,它运行大约 20 个命令,这些命令也几乎立即返回。我还尝试了 telnetlib 中的其他一些读取函数(例如 read_very_eager()),但没有任何改进。
有谁知道为什么这个设置如此缓慢,如果有什么我可以做的吗?