将Subprocess.call的输出存储在String中

时间:2014-11-28 10:21:00

标签: python unix subprocess

我试图通过python代码点击unix命令。但是当我使用subprocess.call函数时,它直接弹出结果。 我想将结果存储到字符串中。 下面是我的代码示例。

import subprocess
Store_result=subprocess.call("grep 'xyz-pqr' textfile_5906.txt",shell=True)
print Store_result

#This返回0

我想将结果存储在一个字符串中,并将其用于进一步编码。

1 个答案:

答案 0 :(得分:3)

x=subprocess.Popen("grep 'xyz-pqr' textfile_5906.txt",shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE)
output,err=x.communicate()

这样你就会有错误和输出。