Простоя совместимость с getpass
Я пытаюсь написать сценарий, который вводит и настраивает маршрутизатор Cisco удаленно, используя соединение Telnet.
все идет хорошо, за исключением того, что у меня была проблема во время выполнения отладки "MyScrept" и причина также из-за getpass.getpass() с Pycharm IDLE. Я узнал, что:
Blockquote
Предупреждение: ввод пароля может быть повторен.
Blockquote
и если я запускаю его напрямую, "не используя режим отладки", он просто спрашивает у меня имя пользователя в строке tty, затем просто держится в этом месте без продолжения, продолжайте до конца кода, спрашивая мне пароль и также вводите необходимые конфигурации, так что просто держись там,
Мой скрипт так же, как следует:
import getpass
import telnetlib
HOST = X.W.Y.Z" #Cisco Device IP address
user = input("Enter your remote account: ")
password = getpass.getpass()
tn = telnetlib.Telnet(HOST)
tn.read_until(b"Username: ")
tn.write(user.encode('ascii') + b"\n")
if password:
tn.read_until(b"Password: ")
tn.write(password.encode('ascii') + b"\n")
tn.write(b"config t \n")
tn.write(b" int lo 2 \n")
tn.write(b"ip add 10.1.1.1 255.255.255.0 \n")
tn.write(b"end\n")
tn.write(b"exit\n")
print(tn.read_all().decode('ascii'))
Заранее благодарю за любую помощь.