Извлечь вывод Juniper Devices и сохранить в файл словаря через netmiko python - PullRequest
0 голосов
/ 28 января 2019

Я запускаю свой скрипт, используя netmiko и ssh для устройства можжевельника.Сценарий запускает команды для получения информации об устройстве, такой как имя хоста, модель и т. Д. Затем выходные данные сохраняются в словаре.

выводится результат вывода из кода, который занимает слишком много места, а вывод не сохраняется должным образом в словаре

Это результат печати из кода

Hostname: vcx.lab01

{master}

Model: t640

{master}

Junos: 15.1R7-S1

{master}

Если вы видите выше, между выводом первой команды и выводом второй команды много пробелов, и каждая команда заканчивается {master}.

Ниже приведен ввод ключа cli direct с маршрутизатора Juniper

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}

Даже у меня возникают те же проблемы с пространством при выполнении одних и тех же команд через маршрутизатор Juniper.

Таким образом, когда я сохраняю каждый вывод устройства можжевельника в свой словарь, он будет сохранять, как показано ниже

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

Мне очень нужна ваша помощь, чтобы посоветовать мне, что я могу сделать, чтобы преодолеть эти проблемы, пожалуйста, помогите мне.Спасибо

1 Ответ

0 голосов
/ 30 января 2019

Просто чтобы поделиться решением

Я использую re.sub () и нарезку строк и могу получать чистые данные построчно без пустого пространства и состояния {master}.

Спасибо.Я надеюсь, что это может помочь и другим.

...