私のPythonスクリプトで:Python:新しいcmdウィンドウでbatファイルを実行するにはどうしたらいいですか?
p = Popen('a.bat')
問題は、バッチファイルの出力は、私は私のPythonスクリプトを実行するメインコンソールウィンドウに置かれていることである...私は、バッチファイルの出力になりたいです新しいコンソールウィンドウに表示されます。どんな助けもありがとう。ありがとう。
私のPythonスクリプトで:Python:新しいcmdウィンドウでbatファイルを実行するにはどうしたらいいですか?
p = Popen('a.bat')
問題は、バッチファイルの出力は、私は私のPythonスクリプトを実行するメインコンソールウィンドウに置かれていることである...私は、バッチファイルの出力になりたいです新しいコンソールウィンドウに表示されます。どんな助けもありがとう。ありがとう。
を動作するはずです。たとえば:shell=True
に関する
import subprocess
p = subprocess.Popen('a.bat', creationflags=subprocess.CREATE_NEW_CONSOLE)
ドキュメントはimplementationと矛盾しています。 shell=True
を指定した場合、プラットフォームがWin9xまたは16ビットのシェルを使用する場合にのみ、CREATE_NEW_CONSOLE
が設定されます。
私は前のpythonを使用していないので、私はテストすることはできませんが、これはあなたがCREATE_NEW_CONSOLE
フラグを設定することができます
p = Popen('cmd.exe /k start a.bat')
申し訳ありませんが、これは動作しません。現在のコンソールを継承するのではなく、プロセスの新しいコンソールを作成するように、Win32の 'CreateProcess'に作成フラグを設定する必要があります。 – eryksun
これは私が期待したことを与える...ありがとう。 :) – sky