Как поток stdout из subprocess.Popen в файл? - PullRequest
0 голосов
/ 05 августа 2020

Как создать stdout прямой трансляции из подпроцесса. Открыть в файл Мне это нужно, потому что после убийства подпроцесса все stdout удалены, но я хочу сохранить stdout после убийства

Начальный файл скрипта:

result = subprocess.Popen([f'{parameters}', f'{url_script}'], stdout=sys.stdout, stderr=sys.stdout, bufsize=0)
r.set(id_, result.pid)

result.wait()

Процесс убийства:

 `process_id = r.get(id_)
 os.kill(int(process_id), signal.SIGTERM)`

1 Ответ

0 голосов
/ 05 августа 2020
out = subprocess.run("test.exe",stdout=subprocess.PIPE, timeout=5, shell=True)
data= str(outStd.stdout.decode().strip())

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

...