파이썬에서 실행중인 명령 디렉토리를 지정하는 방법이 subprocess.Popen()
있습니까?
예를 들면 다음과 같습니다.
Popen('c:\mytool\tool.exe', workingdir='d:\test\local')
내 파이썬 스크립트는 C:\programs\python
C:\mytool\tool.exe
디렉토리에서 실행할 수 D:\test\local
있습니까?
하위 프로세스의 작업 디렉토리를 어떻게 설정합니까?
답변
subprocess.Popen
cwd
현재 작업 디렉토리를 설정하기 위해 인수 를 취합니다 . 백 슬래시 ( 'd:\\test\\local'
) 를 이스케이프하거나 백 r'd:\test\local'
슬래시가 Python에서 이스케이프 시퀀스로 해석되지 않도록 사용 하려고 할 수도 있습니다 . 당신이 그것을 작성하는 방식으로, \t
부분은로 번역됩니다 tab.
따라서 새 줄은 다음과 같아야합니다.
subprocess.Popen(r'c:\mytool\tool.exe', cwd=r'd:\test\local')
Python 스크립트 경로를 cwd로 사용 import os
하고 다음을 사용하여 cwd를 정의하십시오.
os.path.dirname(os.path.realpath(__file__))