我使用netmiko和ssh将脚本运行到杜松设备。该脚本运行命令以获取设备信息,例如主机名,型号等。然后将输出保存到字典中。
代码输出的打印结果空间太大,输出没有正确保存到字典中
这是代码的打印输出结果
Hostname: vcx.lab01
{master}
Model: t640
{master}
Junos: 15.1R7-S1
{master}
如果您可以在上面看到,则第一条命令输出和第二条命令输出之间会有很多空格/间隙,并且每个命令将以{master}结尾。
以下是来自Juniper路由器的直接输出cli
usr12@vcx.lab01> show version | match Hostname
Hostname: vcx.lab01
{master}
usr12@vcx.lab01> show version | match Model
Model: t640
{master}
usr12@vcx.lab01> show version | match Junos:
Junos: 15.1R7-S1
{master}
即使在杜松路由器上运行相同的命令时,我也会遇到相同的空间问题。
因此,当我将杜松设备的每个输出保存到我的字典中时,它将像下面这样保存
Hostname,Model,Version^M
"
Hostname: vcx.lab01
{master}","
Model: t640
{master}","
Junos: 15.1R7-S1
{master}"^M
我希望打印输出干净整洁,没有空格,也没有像下面这样的{master}
Hostname: vcx.lab01
Model: t640
Version: 15.1R7-S1
我想要下面的字典文件
Hostname,Model,Version
vcx.lab01,t640,15.1R7-S1
我真的需要您的帮助来建议我该如何解决该问题,请帮助我。谢谢
答案 0 :(得分:0)
只需分享解决方案
我使用re.sub()和字符串切片,并且能够逐行获取干净的数据,而没有任何空白和{master}状态。
谢谢。我希望这也可以帮助其他人。