1
即時連接一臺linux服務器與sshclient。然後,即時通過telnet在這臺服務器上連接cisco路由器。我連接服務器並執行telnet命令完美,但在第二或第三telnet命令代碼得到stucked和犯規扔error.Here是我的代碼部分:paramiko exec_command在幾個命令後掛起
def __init__(self):
self.pre_client=paramiko.SSHClient()
self.pre_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
sellf.pre_client.connect("server",username="user",password="password")
self.client=self.pre_client.invoke_shell()
def connect(self,ip):
o=self.client.recv(1024)
print o
self.client.exec_command("telnet %s\n"%(ip))
while True:
o=self.client.recv(1024)
print o
#EXECUTE COMMAND ON ROUTER
self.client.exec_command("exit\n")
if 'exit' in o:
break
爲什麼會卡在這個命令?我該如何處理它?
當我打印我觀察到我的命令不正確打印輸出。例如,如果我發送退出命令它打印如: ex -it 但答覆打印正確。 İs它realeted我的問題? – zeto
這是第一臺主機還是第二臺telnet'd主機? –
即時通訊發送退出命令結束會話的遠程登錄。 – zeto