7

私のpythonスクリプトでは:

p = Popen('a.bat')

問題は、バッチ ファイルの出力が、Python スクリプトを実行したメイン コンソール ウィンドウに表示されることです... バッチ ファイルの出力を新しいコンソール ウィンドウに表示したいです。どんな助けでも大歓迎です。ありがとう。

4

2 に答える 2

12

CREATE_NEW_CONSOLEフラグを立てることができます。例えば:

import subprocess

p = subprocess.Popen('a.bat', creationflags=subprocess.CREATE_NEW_CONSOLE)

に関するドキュメントは実装shell=Trueと矛盾しています。を指定すると、プラットフォームが Win9x であるか、16 ビットシェルを使用している場合にのみ設定されます。shell=TrueCREATE_NEW_CONSOLECOMMAND.COM

于 2012-11-23T19:14:06.127 に答える
2

私は以前にPythonを使用したことがないため、テストできませんが、これは機能するはずです

p = Popen('cmd.exe /k start a.bat')
于 2012-11-23T08:41:12.733 に答える