Я пишу скрипт на python, который подключится к серверу telnet и напишет несколько основных команд.Часть входа работает нормально, так же как и команда «show version», но когда я пишу команду «quit», она набирает «uit» в telnet.
Одна вещь, которая сработала, это написание «qquit», это будет вводить "выйти" в телнет, но это противоречиво.Чтобы попробовать, я попробовал три команды «показать версию», две из них работали, средняя набрала «как версия», пропустив первую букву.
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-Тестовый переключатель> quit
Фактический вывод
DPI-тестовый переключатель> Показать версию
...
...
...
DPI-testbed-Switch> uit
Перевод сервера домена "uit" ... (255.255.255.255)
IБуду очень признателен за любую помощь и буду рад любым изменениям, которые необходимо внести, если я могу выполнять команды надежным способом.