netmiko:如何在新行中发送get命令输出

时间:2020-04-15 05:40:25

标签: python python-3.x netmiko

这是脚本

from netmiko import ConnectHandler

cisco_device = {
    'device_type': 'cisco_ios',
    'ip': 'Router1',
    'username': 'u',
    'password': 'p'
}

net_connect = ConnectHandler(**cisco_device)

cmd = ['show clock', 'show version | include IOS']
output = ''
for command in cmd:
    output += net_connect.send_command(command)

print(output)

输出

如您所见,输出显示在一行中

[email protected]:~$ python script.py 

*00:22:10.927 UTC Fri Mar 1 2002Cisco IOS Software, 3700 Software (C3725-ADVENTERPRISEK9-M), Version 12.4(15)T7, RELEASE SOFTWARE (fc3)
[email protected]:~$ 

所需的输出

我想在新行中将每个输出分开

*00:23:31.943 UTC Fri Mar 1 2002
Cisco IOS Software, 3700 Software (C3725-ADVENTERPRISEK9-M), Version 12.4(15)T7, RELEASE 

2 个答案:

答案 0 :(得分:1)

output = []
for command in cmd:
    output.append(net_connect.send_command(command))
    print(output[-1])

答案 1 :(得分:1)

其他方法是在每行上添加换行符"\n"

output = ''
for command in cmd:
    output += net_connect.send_command(command) + "\n"

print(output)