我正在尝试使用子进程库从我的 Python 模块运行 grep 命令。因为,我正在对 doc 文件执行此操作,所以我正在使用 Catdoc 第三方库来获取计划文本文件中的内容。我想将内容存储在文件中。我不知道我哪里出错了,但是程序无法生成纯文本文件并最终无法获得 grep 结果。我已经浏览了错误日志,但它是空的。感谢所有的帮助。
def search_file(name, keyword):
#Extract and save the text from doc file
catdoc_cmd = ['catdoc', '-w' , name, '>', 'testing.txt']
catdoc_process = subprocess.Popen(catdoc_cmd, stdout=subprocess.PIPE,stderr=subprocess.PIPE, shell=True)
output = catdoc_process.communicate()[0]
grep_cmd = []
#Search the keyword through the text file
grep_cmd.extend(['grep', '%s' %keyword , 'testing.txt'])
print grep_cmd
p = subprocess.Popen(grep_cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE, shell=True)
stdoutdata = p.communicate()[0]
print stdoutdata