вывод pexpect не имеет перевода строки - PullRequest
0 голосов
/ 11 февраля 2020

Я использую python 3 на windows 10 У меня проблема с использованием библиотеки wexpect. Вывод wexpect не содержит разрывов строк. Я много искал, и некоторые люди предлагают декодировать вывод, однако это здесь не применимо в качестве выходных данных child.before - строка, а не байт

, поэтому, если у кого-либо есть решение этой проблемы, пожалуйста, помогите

import wexpect

ip = "172.25.120.1"

try:
    child = wexpect.spawn('ssh -l cisco {}'.format(ip))

    prompt = child.expect(['[pP]assword:', r'yes/no'])
    if prompt == 0:
        child.sendline('cisco')
    elif prompt == 1:
        child.sendline("yes")
        child.expect("[pP]assword:")
        child.sendline('cisco')
    child.expect('>')
    child.sendline('enable')
    child.expect('[pP]assword:')
    child.sendline('cisco')
    child.expect('#')
    child.sendline('show ip inter brief | in Tunne|Seria|Ether')
    child.expect('#')
    Lines = child.before
    print(Lines)
except wexpect.TIMEOUT:
    print('{} connection time out'.format(ip))
except wexpect.EOF:
    print('{} connection problem'.format(ip)) 

Output

show ip inter brief | in Tunne|Seria|Ether
GigabitEthernet0/0/0   172.25.120.1  YES NVRAM  up                    up      GigabitEthernet0/0/0.2 unassigned      YES unset  up                    up      GigabitEthernet0/0/0.3 unassigned      YES unset  up                    up      GigabitEthernet0/0/1   unassigned      YES NVRAM  up                    up      GigabitEthernet0/0/1.1 172.39.140.14   YES NVRAM  up                    up      Tunnel1
               172.76.84.90    YES NVRAM  up                    up      gtrouh_Router
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...