SSH.Paramiko.Command执行失败
SSH.Paramiko.Command execution failure
网络工程师的问题。
为什么HP路由器执行命令"display version",执行命令"display arp"失败。会话只是挂起...
但与此同时,"display arp 10.241.178.2 " 的执行完成得很好。
这是 HP 设备,"dis arp" 命令肯定能正常工作。
try:
print("\n!!!Connecting to "+ip_connect+"!!!\n\n")
session = paramiko.SSHClient()
session.set_missing_host_key_policy(paramiko.AutoAddPolicy())
session.connect(ip_connect,username=a, password=b, timeout=20)
time.sleep(2)
stdin, stdout, stderr = session.exec_command('display version\n')
data = stdout.read() + stderr.read()
print data
time.sleep(2)
session.close()
except paramiko.SSHException:
print("!FAILED!")
再举一个例子:
stdin, stdout, stderr = session.exec_command('display arp | i D\n')
输出:
<>
Type: S-Static D-Dynamic
IP Address MAC Address VLAN ID Interface Aging Type
<>
Process finished with exit code 0
它只是不想让我看到 table 本身,我不知道为什么。
我用 Paramiko 的 Netmiko insted 解决了我的问题!
网络工程师的问题。 为什么HP路由器执行命令"display version",执行命令"display arp"失败。会话只是挂起... 但与此同时,"display arp 10.241.178.2 " 的执行完成得很好。
这是 HP 设备,"dis arp" 命令肯定能正常工作。
try:
print("\n!!!Connecting to "+ip_connect+"!!!\n\n")
session = paramiko.SSHClient()
session.set_missing_host_key_policy(paramiko.AutoAddPolicy())
session.connect(ip_connect,username=a, password=b, timeout=20)
time.sleep(2)
stdin, stdout, stderr = session.exec_command('display version\n')
data = stdout.read() + stderr.read()
print data
time.sleep(2)
session.close()
except paramiko.SSHException:
print("!FAILED!")
再举一个例子:
stdin, stdout, stderr = session.exec_command('display arp | i D\n')
输出:
<>
Type: S-Static D-Dynamic
IP Address MAC Address VLAN ID Interface Aging Type
<>
Process finished with exit code 0
它只是不想让我看到 table 本身,我不知道为什么。
我用 Paramiko 的 Netmiko insted 解决了我的问题!