【发布时间】:2015-06-26 01:56:52
【问题描述】:
import sys,re,os
from subprocess import Popen, PIPE, call
newCmd = 'diff -qr -b -B '+sys.argv[1]+' '+sys.argv[2]+' --exclude-from='+sys.argv[3]+' | grep pattern1\|pattrern2 > outputFile'
ouT,erR = Popen(newCmd, shell=True).communicate()
print ouT,erR
out 和 erR 正在打印 None, None 并且 outputFile 是一个空白文件。
当我在普通 shell 中执行相同的“newCmd”时,它执行得很好
基本上,这里的目的是将shell命令的输出重定向到python内部的一个文件中。尝试了不同的方法(使用调用),对我来说没有任何结果
【问题讨论】:
-
您希望输出到 outputFile 还是到
ouT变量?
标签: python unix pipe subprocess popen