2017-11-21 12 views
0

Windows의 모든 폴더에서 실행하고 싶은 Python 스크립트 폴더가 있습니다. Python 해석기로 Miniconda와 함께 설치된 Python 3.6을 실행하고 있습니다.Windows의 powershell 아래에서 임의의 폴더에서 python 스크립트를 실행하십시오.

예를 들어 폴더 C:\Users\name\my_scripts에는 다음과 같은 내용의 test.py이라는 스크립트가 있습니다.

print('test') 

스크립트를 실행하는 폴더로 이동 한 후 파이썬으로 실행하여 다음 출력을 생성합니다.

PS C:\Users\name\my_scripts> python test.py 
test 

PS C:\Users\name\my_scripts> cd.. 
PS C:\Users\name> python test.py 
C:\Users\name\Miniconda3\python.exe: can't open file 'test.py': [Errno 2] No such file or directory 

나는 PathC:\Users\name\my_scripts를 추가했습니다. powershell의 임의의 폴더에 test.py을 입력하면 기본 텍스트 편집기로 스크립트가 열리지 만, python test.py 양식으로 스크립트를 실행하면 스크립트 폴더가 아닌 다른 곳에서 파일을 찾을 수 없으므로 오류가 발생합니다.

스크립트 폴더를 포함하는 %PYTHONPATH% 환경 변수를 만들지 못했습니다. 이 환경 변수는 특정 위치에서 모듈을 가져 오는 데 사용되지만 자체적으로 모듈을 실행하는 데 사용되지 않으므로 정상적으로 작동합니다.

주어진 위치에서 my_scripts 폴더의 스크립트를 실행할 수있는 방법이 있습니까?

+1

'python my_scripts \ test.py'가 작동해야합니다. – MarAja

답변

0

을 생각 당신은 3 개 가지 방법으로 작업을 수행 할 수 있습니다

  • 파이썬은
  • 메이크업을 ./path/to/script 파일의 패키지, 즉 .whl 파일 및 pip 설치 (그것은 conda 환경에서 pip 설치를 경고합니다.)
  • 파이썬을 시작하기 전에 스크립트 폴더에 CD를 넣는 .bat 파일을 만드십시오. . 박쥐 파일 ./Miniconda/Scripts에 위치하면 condaf 프롬프트를 시작할 때 작동합니다.

편도가 있지만 아주 추악하고 권장하지는 않지만 작동합니다. 먼저 파이썬 세션에서 sys.path에있는 폴더를 찾은 다음 your_script.py를 거기 폴더로 복사하십시오. 그런 다음 python을 실행하여 해당 스크립트를 보류 할 수 있습니다. -m your_script.py your_script는 모듈이 아니므로 권장되지는 않지만, 원하는 경우 바로 사용할 수 있습니다.

흠. 실제로 .bat 파일을 사용해야하는 것처럼 들립니다. 어쩌면 그것의 mp.bat 그 이름을 .bat 당신은 CD를 할 수 있으며 또한 cmd를 라인 옵션을 구문 분석, 그래서 당신의 추신 : 단순히mp.bat test.py 수 있습니다 당신이 찾고있는 것 같다 .bat 파일로 인수를 취하는 방법을 찾을 수있을 것이라고 확신합니다.

+0

내 파일을 패키지로 설치할 때 좀 더 자세히 설명해 주시겠습니까? 'python test.py'를 입력하여 실행하겠습니까? – Jonas

+0

python -m test.py python -m this.py를 사용해보세요 ... 재미 있습니다. – ahed87

0

python my_scripts\test.py이 작동해야합니다. 더 일반적으로

, 당신과 함께 인터프리터를 사용하여 파이썬 스크립트를 실행 python PATH_TO_SCRIPT

+0

그게 내가'Path'에 내 스크립트를 추가함으로써 우회하려고하는 것입니다. 스크립트를 사용하는 동안 스크립트 전체 경로를 입력하지 않으려합니다. 대신 path \ to \ python \ python 대신에'python'을 입력하여 파이썬을 실행할 때 어디에서나 이름으로 호출 할 수 있기를 원합니다.exe' – Jonas

+0

편집 :'python my_scripts \ test.py'로 스크립트를 실행해도 불행하게도 작동하지 않습니다. 스크립트 디렉토리의 경로를'Path'user 변수에 추가하려고 시도하고'my_scripts' 폴더를 가리키는'my_scripts' 사용자 변수를 만들려고 시도했습니다 – Jonas

+0

cmd.exe에서 스크립트를 실행할 수 있음을 발견했습니다 'python % my_scripts % \ test.py'를 입력함으로써 사용자 변수로 선언되기 때문입니다. 여전히 짧은 powershell 솔루션을 선호합니다. – Jonas