【发布时间】:2011-01-10 19:26:34
【问题描述】:
def StartProc(dir, parm):
global proc
proc_log = open(dir + os.sep + "MyLog.txt","w") #new path for each file
if parm:
proc = subprocess.Popen(path, 0, None, subprocess.PIPE, proc_log, None)
else:
MyReset(proc) #reset the process(proc) to its default values
proc.stdout = proc_log #no effect
print "fptr ", proc.stdout
#endif
#enddef
prm = True
for i in range(0, 5):
StartProc(i, prm)
prm = False
#endfor
我想要做的是只启动一次可执行文件,但在每次迭代中,我想将进程输出重定向到不同的文件。发生了什么,文件是在不同的路径中创建的,但输出被重定向到第一次创建的文件。
注意:MyReset() 在第一次迭代后将进程(可执行文件)初始化为其默认值。
以下行会将进程标准输出更改为新文件吗?
proc.stdout = proc_log
【问题讨论】:
标签: python subprocess stdout