我想在Python才能执行此命令Python的调用grep的失败
grep keyMessage logFile.log > keyMessageFile.log
这就是我现在做
from subprocess import call
keyMessage= 'keyMessage'
call(["grep", keyMessage, "logFile.log"])
,但我不知道如何添加> keyMessageFile.log
部分
顺便说一下,我使用grep的原因是因为它比使用读文件快得多,然后比较字符串,然后写文件
#UPDATE 有较慢Python代码写到
keyMessage= 'keyMessage'
with open('logFile.log') as f:
for line in f:
with open(keyMessage+ '.txt', 'a') as newFile:
if(keyMessage not in line):
continue
else:
newFile.write(line)
为什么从'python'调用'grep'? – cdarke
@MichaelMao您的更新代码将打开并关闭每行的输出文件,该文件仍然很慢。 – AKX