我正在python上编写脚本,该脚本将连接到telnet服务器并编写一些基本命令。登录部分可以正常工作,“显示版本”命令也可以,但是当我编写“退出”命令时,它将telnet输入“ uit”。
起作用的一件事是编写“ qquit”,将“ quit”输入到telnet中,但是不一致。 Jus尝试了一下,我尝试了三个“显示版本”命令,其中两个有效,中间一个键入“ how version”,但缺少第一个字母。
user = "cisco"
password = "cisco"
tn = telnetlib.Telnet(HOST)
tn.read_until(b"Username: ")
tn.write((user + "\n").encode('ascii'))
if password:
tn.read_until(b"Password: ")
tn.write((password + "\n").encode('ascii'))
tn.write(b"show version\n")
tn.write(b"quit\n")
print(tn.read_until(b"quit").decode('ascii'))
预期产量
DPI-testbed-Switch>显示版本
...
...
...
DPI-testbed-Switch>退出
实际输出
DPI-testbed-Switch>显示版本
...
...
...
DPI-testbed-Switch> uit
正在翻译“ uit” ...域服务器(255.255.255.255)
只要能以可靠的方式运行命令,我将非常感谢您的帮助,并且愿意进行任何更改。