繁体   English   中英

重定向 subprocess.run output 到文件

[英]Redirect subprocess.run output to file

我在这里看到很多其他页面将 output grep output 与文件相关联,但我似乎无法使任何这些工作。

我有

subprocess.run(['grep', '-o', searchFor, filename])

如果这不是一个子流程,我会使用类似的东西

grep -o searchfor filename >> outputfile.txt

当我尝试在子进程中使用>>>或其他任何内容时,我无法将它到 output 到一个简单的 txt 文件。 我认为这是因为与我在 subprocess 中尝试相比,我在这里看到的大多数页面都是从常规命令写入文件的。 我的猜测是我的语法是错误的。 >>>或我应该在哪里使用 go? 我在]和之前以及许多其他组合之后尝试过。

以 write ( > ) 或 append ( >> ) 模式打开文件,并在subprocess.run调用中将与其关联的描述符分配给stdout

with open('outputfile.txt', 'w') as fd:
  subprocess.run(['grep', '-o', searchFor, filename], stdout=fd)

问题未解决?试试以下方法:

重定向 subprocess.run output 到文件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2023 STACKOOM.COM