Извлечение данных из вывода командной строки с использованием Python - PullRequest
0 голосов
/ 02 июля 2018

Вот команда, которую я использовал для получения информации о файле, в которой меня интересует только версия ревизии. Команда:

 command='si revisioninfo D:/Documentation/file_folder/file.c'
 process = Popen(args=command,stdout=PIPE,shell=True)
 file_output=process.communicate()[0]
 print file_output

Выход:

Sandbox Name: D:/Documentation/project.pj
Revision: 1.7
Labels: Review_1

Из них я хочу, чтобы только выходные данные были назначены на выход.

1 Ответ

0 голосов
/ 02 июля 2018

Если часть ревизии всегда является второй строкой вывода, вы можете использовать splitlines () , чтобы разбить строку на новую строку:

file_output = process.communicate()[0].splitlines()[1]

Если это не так, вы всегда можете получить первую строку, которая начинается с 'Revision:':

file_output = [line for line in process.communicate()[0].splitlines() if line.startswith('Revision:')][0]
...