p = subprocess.Popen("path to batch file")
time.sleep(30)
#do something to terminate the .exe process
Popen を使用してバッチ ファイルを実行しています。関連するプログラム .exe が開き、cmd ターミナルで実行されます。プログラムは、端末に「q」引数を手動で入力することで (うまく) 終了できます。
上記のpython27スクリプトを使用して「q」文字列を端末に渡し、プログラムがネイティブの終了信号を認識して終了するようにしたいと思います。「os」および「subprocess」モジュールのドキュメントを読み、いくつかの方法(.call、.terminate、.kill)を試した後、成功しませんでした
編集:
操作..
p.send_signal('q')
..私がやりたいことのようです。ただし、「q」はインタープリターで ValueError を発生させます。