Python Script отправляет команду терминала Ubuntu в список - PullRequest
0 голосов
/ 20 сентября 2018

У меня есть эта команда в Ubuntu:

bgpq3 -4 AS-YAHOO-JP-2 -m 24 -l Google

выводом является список префиксов:

ip prefix-list Google Разрешение 14.137.224.0/19

ip prefix-list Google разрешение 27.111.76.0/22

ip prefix-list Google разрешение 27.121.128.0/17

ip prefix-list Google разрешение 27.133.224.0/22

ip prefix-list Google разрешение 27.133.240.0/22

ip prefix-list Google разрешение 27.133.240.0/24

ip prefix-list Google разрешение 27.133.241.0/24

ip prefix-list Google Разрешение 27.133.242.0/24

ip prefix-list Google Разрешение 27.133.243.0/24

как я могу поместить вывод вперечислите и используйте каждую строку (например, отправьте их в базу данных). Я не хочу сначала сохранять их в файл. txt

Я использую эту команду, но это не помогает, потому что результаты хранятся вТекстовый файл.

os.system("bgpq3 -4 AS-YAHOO-JP-2 -m 24 -l Google > list.txt")

Пожалуйста, помогите мне разобраться в этом !!!

1 Ответ

0 голосов
/ 21 сентября 2018

Я думаю, вы могли бы использовать модуль подпроцесса.Этот модуль заменяет некоторые старые модули и функции.Официальный документ здесь: https://docs.python.org/3/library/subprocess.html#module-subprocess

import subprocess
res = subprocess.Popen('bgpq3 -4 AS-YAHOO-JP-2 -m 24 -l Google', shell=True,
                       universal_newlines=True,
                       stdout=subprocess.PIPE).communicate()[0]

for line in res.split('\n'):
    print(line)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...