【发布时间】:2021-02-06 04:03:05
【问题描述】:
我正在学习 python 并编写一个小脚本。我需要将我的输出保存在一个文件中,并且还要在屏幕上打印输出。我尝试了各种方法,例如stdout=subprocess.PIPEi 无法确定输出到两者。请原谅我这个愚蠢的问题`
#!/usr/bin/python
import os
import subprocess
with open('/root/test/testfile') as f , open('aaa.txt',"w") as final:
content = f.read().splitlines()
for x in content:
result= subprocess.Popen(['grep',x,'/news/today/night/logs'],stdout=final)
【问题讨论】:
-
我认为这是重复的。如果它不能满足您的需求,请告诉我。
-
@tdelaney 我无法理解与我的问题相比的解决方案,请您帮助我处理 proc wait 和 sys 命令。
-
testfile 中有哪些行?在日志或正则表达式中可以找到一些单词?
-
我认为您根本不需要子流程。只需让 python 找到这些行。这有点像现有答案的作用,但似乎文件混淆了。我会发布我的尝试。
-
@tdelaney 谢谢你,如果你能分享你的解决方案,我创造了类似于你的东西,但我只得到一个 grep 输出。
标签: python linux python-2.7 subprocess python-2.x