python - 如何在不使用“shell=True”的情况下将“subprocess.run”结果写入日志文件?
问题描述
目前,我正在使用以下格式将运行结果写入日志文件。
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)
推荐阅读
- bash - Centos sh - 在执行命令中植入变量
- javascript - 如何使用 jquery 从随机维基百科页面获取数据
- c# - 将键/值项列表添加到 C# 中的自定义配置元素
- c# - 配置 Asp.net MVC 项目和 EntityFramework 以使用 Redis 作为缓存提供程序
- java - 带有 java 应用程序的 Burp Suite 代理
- c# - 如何在 TrulyObservableCollection 中通知单个属性更改或修改
- c# - 如果可以的话,我们应该总是按 ref 返回吗?
- html - 通过谷歌地图记录海拔剖面点
- c - 如何在 Frama-C 中使用 vstmt_aux 访问我的语句
- android - 代码生成的单选按钮检查选择