如何在不使用 "shell=True" 的情况下将 "subprocess.run" 结果写入日志文件?
How to write "subprocess.run" results to a log file without using "shell=True"?
目前,我正在使用以下格式将 运行 结果写入日志文件。
p = subprocess.run(["mpiexec -n 2 ./executor >log"],shell=True)
谁能告诉我如何在我可以编写日志文件时避免使用“shell=True”?
谢谢。
只需自己拆分参数,自己打开文件,然后将打开的文件传递给 run
使其将输出发送到那里:
with open('log', 'wb') as outfile:
p = subprocess.run(['mpiexec', '-n', '2', './executor'], stdout=outfile)
目前,我正在使用以下格式将 运行 结果写入日志文件。
p = subprocess.run(["mpiexec -n 2 ./executor >log"],shell=True)
谁能告诉我如何在我可以编写日志文件时避免使用“shell=True”?
谢谢。
只需自己拆分参数,自己打开文件,然后将打开的文件传递给 run
使其将输出发送到那里:
with open('log', 'wb') as outfile:
p = subprocess.run(['mpiexec', '-n', '2', './executor'], stdout=outfile)