我正在目录中的一堆*.in
文件上运行可执行文件。我的脚本一次转储了所有命令。我想在较早的过程终止后按顺序运行Popen
。这是我的脚本:
import glob, os, subprocess
import sys, re, math
exec_path='/Users/me/path/to/exec'
for name in glob.glob("*.in"):
print name
output = name+'.out'
args = [exec_path, '-o', output, name]
subprocess.Popen(args)
感谢您的时间。
答案 0 :(得分:2)
听起来像您需要wait才能使过程结束,然后继续循环。
您的示例可以这样重写;
import glob
import subprocess
exec_path='/Users/me/path/to/exec'
for name in glob.glob("*.in"):
print name
output = name + '.out'
args = [exec_path, '-o', output, name]
subprocess.Popen(args).wait() # <- I've added .wait()