오전 3시에 시작하여 평일 오후 5시에 휴식하도록 Python 스크립트를 예약하고 싶습니다. 그러나 모든 패키지가 가상 환경에 설치되므로 virtualenv를 시작해야 할 때 문제가 발생합니다.
특정 시간에 스크립트를 실행할 수는 있지만 가상 환경을 활성화 할 수는 없습니다 (일반적으로 ” env\scripts\activate
“) 다음은 내 행동이 어떻게 생겼는지 보여줍니다.
정품 인증 가상화 기능을 통합하려면 어떻게해야합니까? 스크립트를 중단하기 위해 내 행동을 어떻게해야합니까?
답변
내 workon.bat 스크립트는 Env 속성을 올바르게 설정하지 않지만이 최종 명령은 작업 스케줄러에서 작동합니다.
cmd / C c : /Users/name/Env/workon_name/Scripts/activate.bat & amp; 파이썬 run_script.py
답변
배치 파일을 만들면 어떻게 될까요? test.bat
먼저 가상 환경을 활성화 한 다음 파이썬 스크립트를 실행합니다. 같은 것 :
env\scripts\activate
D:\Python\Aldabra\env\Scripts\python.exe "D:\Python_scpt\test.py"
그런 다음 Windows Task Scheduler에서 스크립트를 실행하십시오.
스크립트에서 나는 또한 env\scripts\activate
부분은 스크립트가 실행되는 위치에 의존하지 않습니다. 즉 절대 경로로 만듭니다.
답변
당신은 그것을 사용하여 명령 줄에서 만들 수 있습니다 schtasks
가상 환경 디렉토리 내의 python 실행 파일에 대한 경로 지정
schtasks /Create /SC HOURLY /TN VirtualEnvPythonTask /TR "PATH_TO_VIRTUAL_ENV_PYTHON_EXECUTABLE PATH_TO_PYTHON_SCRIPT"
또는 작업 스케줄러 GUI를 사용할 수 있습니다. Action: start a program
설정 Program/script:
가상 환경 경로의 python 실행 파일에 python 스크립트를 추가합니다. Add arguments (optional):
들
예를 들어, 환경 호출 MSSQL-ETL-ENV와 함께 conda를 사용하고 있습니다. 파이썬 경로는 다음과 같습니다.
C:\Users\dbaker\AppData\Local\Continuum\anaconda3\envs\MSSQL-ETL-ENV\python
답변
직접 전화를 걸 때 python.exe
파일을 가상 환경에서 사용하면 실제로 간접적으로 virtualenvironment
.
입력 할 때 .\env\Scripts\activate
, 경로 변수를 변경하는 중입니다. Lib
가상 환경에 설치된 라이브러리가 들어있는 디렉토리. 결과적으로 파이썬은 해당 라이브러리를 검색 할 때 virtualenv에서 이러한 라이브러리를 먼저 찾아서 사용합니다.
다른 제약 조건이 없다면 C:\path_to_virtualenvip\python.exe C:\path_to_python_file.py
가상 환경에서 python 파일을 실행하기에 충분해야합니다.