0

スクリプトに次の python コードがあります。

proc = subprocess.Popen("test.bat", shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
if len(proc.stderr.read()) > 0:
    #Do stuff

if ステートメントのある行はエラーをスローしていませんが、代わりに、無限ループにあるように無期限にハングしています。なぜこれが起こっているのかについてのアイデアはありますか?

参考までに、これが私が呼び出しているスクリプトで、同じディレクトリにあります。

echo "Hello World!"

編集:上記の行をコメントアウトして追加しました:

output = proc.stdout.read()

この行は現在、上記の行と同じ方法でぶら下がっています。さらに、ファイルから読み取るさまざまなファイル関数はすべて、同じようにハングします。

4

1 に答える 1

1

したがって、スクリプトにはエコーが含まれているだけでなく、最初に一時停止があり、すべてが台無しになっていることがわかりました。

于 2013-07-08T16:48:28.133 に答える