どのように私はpopenのための作業ディレクトリを指定することができます
-
18-09-2019 - |
質問
Pythonのsubprocess.Popen()
でコマンドの実行されているディレクトリを指定する方法はありますか?
例
Popen('c:\mytool\tool.exe', workingdir='d:\test\local')
私のPythonスクリプトはC:\programs\python
に位置しています。
ですが、ディレクトリC:\mytool\tool.exe
でD:\test\local
を実行することは可能でしょうか?
私は、サブプロセスの作業ディレクトリを設定する方法を教えてください。
解決
subprocess.Popen
設定するcwd
引数を取ります現在の作業ディレクトリ。また、あなたのバックスラッシュ('d:\\test\\local'
)を脱出したい、またはバックスラッシュはPythonでエスケープシーケンスとして解釈されないようにr'd:\test\local'
を使用します。あなたはそれが書かれている方法は、\t
部分はタブに変換されます。
だから、あなたの新しい行は次のようになります:
subprocess.Popen(r'c:\mytool\tool.exe', cwd=r'd:\test\local')
<時間>
CWD、import os
としてあなたのPythonスクリプトのパスを使用し、これを使用してCWDを定義するには:
os.path.dirname(os.path.realpath(__file__))
所属していません StackOverflow