무효 클릭 IP 추적 중...
파이썬

[파이썬 기초] 가상환경 파일 주기적 실행(with 윈도우 작업 스케줄러)

꼬예 2022. 10. 4.

이전 포스팅에서 다루었던 방식은 raw한 파일을 주기적으로 실행시키는 방법 이었다면, 이번 포스팅에서는 가상환경 속에서 파일을 주기적으로 실행시키는 방법에 대해 알아보겠습니다. 

 

이해를 돕기 위해 cmd창에 어떤 명령어를 쳐야 가상환경 파일이 실행되는지부터 이해하고 넘어가겠습니다.

 

1) cmd 창에서의 명령어 이해

cmd창을 열면 아래와 같은 화면이 뜨는데요.

 

cmd창 열기

 

여기서 우리는 아나콘다 환경에서 가상환경을 만들어 줘야 하니까, 좌측에 (base) 가 뜨는 형태로 바꿔줘야 합니다.

 

base띄우기

 

그러기 위해서는 Anaconda3 => Scripts => activate.bat 경로를 넣어 .bat파일을 실행시켜 줍니다.

 

아나콘다bat경로

 

참고로 해당 아나콘다 경로는 컴퓨터 마다 위치가 다를 수 있으니 본인에게 맞는 위치를 잘 기입해 주셔야 합니다.

 

이어서 가상환경을 실행 시켜줄 차례인데요.

저는 autotask라는 이름의 가상환경을 만들어 실행시켰습니다.

 

 

그 후 파이썬 파일을 실행시키기 위해 python 명령어를 작성해줍니다.

이전 포스팅과 다르게 python파일의 절대 경로를 적어줄 필요는 없습니다.(python만 입력해도됨)

 

python명령어

 

하지만 여전히 파일 경로는 절대 경로 형태로 작성해줘야 합니다.

 

 

여기까지 cmd에  가상환경 파이썬 파일을 실행시키는 방법을 알아 봤는데요.

 

이 명령어를 작업 스케줄러 스크립트에는 어떻게 적을까요?

보시다시피 칸이 부족하기 때문에 쉽지 않아보입니다.

 

작업스케줄러 스크립트

 

이 문제를 해결하기 위해서는 하나의 파일에 모든 명령어를 집어 넣고, 그 파일을 실행시키는 방향으로 진행해야 합니다.

 

2) .bat파일(배치파일)을 통한 실행

파일 작성 법은 아래와 같습니다.

메모장을 열어 앞서 작성했던 명령어를 그대로 적어주면 되는데요.

 

batch명령어작성

이때 주의할점은, 가상환경을 실행시키는 작업 까지는 앞에 call을 붙혀 주고 파이썬 명령어cmd창에 작성했던 그대로 적어주면 됩니다.

 

그 후 해당 파일의 확장자를 .bat으로 수정하고 .bat파일의 경로를 작업 스케줄러 스크립트에 적어주면 되겠죠?

 

bat파일 경로 입력

 

하지만 실행 해보신분은 아시겠지만, 해당 스크립트가 실행될때 마다 cmd창이 뜨는 상황이 펼쳐지는데요.

 

cmd창을 안뜨게 하는 방법은 없을 까요?

 

3) cmd창 안뜨게 하는 방법(.vbs이용)

방법은 간단합니다. 메모장을 열어 아래와 같이 명령어를 작성해주세요.

 

.vbs명령어 입력

 

여러분이 수정할 부분은 빨간색 사각형 부분의 .bat파일의 경로입니다. 여러분의 pc에 있는 .bat파일의 경로를 넣어주세요.

 

작성 완료한 메모장 파일의 확장자를 .vbs로 변경 해 주시고,

 

.vbs확장자 변경

 

작업 스케줄러에는 기존에 적었던 .bat파일이 아닌, .vbs파일의 경로를 적어주면 cmd창이 뜨지 않고 잘 실행되는것을 알 수 있습니다.

 

.vbs파일 경로 입력

 

  • 트위터 공유하기
  • 페이스북 공유하기
  • 카카오톡 공유하기
이 컨텐츠가 마음에 드셨다면 커피 한잔(후원) ☕

댓글