Как проверить, что подпроцесс, называемый программой, завершен без ошибок? - PullRequest
0 голосов
/ 16 марта 2020

информация: Python 3.6.9

Привет, я хочу знать, выполняется ли подпроцесс, называемый программой, без какой-либо ошибки, если возникнет какая-либо ошибка, я смогу зарегистрировать ошибку. в настоящее время я использую подпроцесс модель

сценарий: я пытаюсь установить numpy, используя другой скрипт, который вызывается в основной программе, функция excecute_command пытается Запустите программу, я хочу проверить, выполняется ли выполненная программа подпроцессом без каких-либо ошибок, я хочу, чтобы возвращаемое значение функции различало, успешно ли выполняется программа или возникает какая-либо ошибка.

Мой код:

def execute_command(command):

logging.info("Running"+" "+command)
try:
    output = subprocess.check_output(["python3",command])
except subprocess.CalledProcessError as error:
    errorMessage = ">>> Error while executing:"+ command+ ">>> Returned with error:"+ str(error.output)
    logging.error(errorMessage)
return output

при печати обратного вывода

вывод :

b'Collecting nump == 1.18.1 \ ncurrent_directory: / home / reorder / SAI_SUBRAMANI / Программы / WORK / Reorder_launcher / reorder_launcher_v1 \ nreorder_launcher_v1 \ nscript_name install_package \ n /II / reuncher \ n / home /order install_package.log \ n '

но при использовании check_output я получаю, какие выходные данные я печатаю в скрипте. Любое предложение?

...