import subprocess
try:
output = subprocess.check_output(
[ './wlst.sh' ],
cwd='dir1/dir2/dir3/dir4',
stderr=subprocess.STDOUT)
except subprocess.CalledProcessError as problem:
print "Error", problem.returncode
print " while calling subprocess, output was:", problem.output
else:
print "No error while calling subprocess, output was:", output
これはサブプロセスのすべての出力をキャプチャすることを言及する必要があるため、このサブプロセスが何度も何度も実行される場合 (そしておそらく終了しない場合)、RAM がいっぱいになります。check_call()この場合の代わりにcheck_output()、おそらく出力を にリダイレクトして使用することを検討してください/dev/null。