擅长:python、mysql、java
<p><code>Popen()</code>立即返回,这样父进程在子脚本之前就结束了,即在输出的最开始处查找“完成的消息”。</p>
<p>您不需要<code>multiprocessing</code>同时运行子流程:</p>
<pre><code>import os
import sys
from subprocess import Popen
# run all child scripts in parallel
processes = [Popen([sys.executable, filename], cwd=dirpath)
for dirpath, dirname , filenames in os.walk('.')
for filename in filenames
if filename == 'Test.py']
# wait until they finish
for p in processes:
p.wait()
print("all done")
</code></pre>
<p>另请参见<a href="https://stackoverflow.com/q/14533458/4279">Python threading multiple bash subprocesses?</a></p>