我在 python 中编写了一个脚本,它使用 telnetlib 模块远程登录到 linux 设备,运行 install.sh 文件,然后在完成后重新启动。完成 install.sh 脚本后,我添加了一行,将 echo "install complete" 发送到终端。不幸的是, read_until("install complete") 和 expect(["install complete"]) 没有检测到这个回声。
tn = telnetlib.Telnet(ip)
tn.read_until("login: ")
tn.write(user + "\n")
tn.read_until("Password: ")
tn.write(password + "\n")
tn.write("cd [file path to the install script]")#echoes "install complete" when finished
tn.write("./install.sh\n")
tn.read_until("install complete") #where the process hangs returns None if I add timeout parameter
telnetlib 没有达到 echo 语句还是我应该使用其他模块或语言?如果我手动运行安装程序,我可以按预期确认“安装完成”回声。