원하는 시간에 프로그램 자동 실행/종료 방법. 작업 스케줄러 활용한 프로그램 실행/종료

작업 스케줄러를 이용한 프로그램 실행

가끔 컴퓨터에서 원하는 프로그램을 특정 시간(특정 주기)에 실행해야 할 경우가 있습니다.


인터넷을 검색해보면 원하는 시간에 프로그램을 실행하는 기능만 담당하는 작은 유틸리티 프로그램들도 꽤 많이 있고, 실제 사용해보면 간단히 잘 작동하더군요.


저는 최근 인터넷 라디오 프로그램을 원하는 시간에 실행/종료하는 기능을 설정하는 방법을 찾아보게 되었습니다.


제가 인터넷 라디오를 설정한 자세한 과정은 다른 포스팅에서 살펴보기로 하고, 오늘은 원하는 시간에 프로그램을 실행하고 종료하는 방법에 대해 살펴보기로 합니다.


오늘 작업에는 별도의 외부 유틸리티가 아닌, 윈도우에 내장된 작업 스케줄러를 이용하겠습니다.


작업 스케줄러는 [제어판]-[시스템 및 보안]-[관리도구] 항목에 들어가 실행할 수 있으며 윈도우10에서는 윈도우 키를 누른 뒤 검색 버튼을 클릭하고 [작업 스케줄러]를 입력하면 바로 실행할 수 있습니다.

윈도우10 작업 스케줄러 실행 방법

참고로 저는 윈도우10 프로페셔널 버전을 사용 중이지만, 확인해보니 윈도우7 홈프리미엄 버전 등에서도 정상적으로 사용할 수 있습니다.


작업 스케줄러가 뜨면, 스케줄러 작업을 만들어야 합니다.

오른쪽의 [작업] 창에서 [기본 작업 만들기]를 클릭합니다.

작업 스케줄러 기본 작업 만들기


[기본 작업 만들기 마법사]가 뜨면 [이름] 항목에 적당한 이름을 적고 [다음] 버튼을 클릭합니다.

작업 스케줄러 작업 이름 설정


[작업 트리거] 항목의 첫 단계에서 작업을 언제 시작할지 정해줍니다.

화면에서 보는 것 처럼, 매일/매주/매월/한 번/컴퓨터 시작 시 등 매우 다양한 옵션을 선택할 수 있는데, 저는 프로그램을 매일 실행 하기로 했습니다.

작업 스케줄러 트리거 주기 설정


[매일] 옵션을 선택한 상태에서, 매일 몇 시에 실행할 것인지 시간을 설정합니다.

작업 스케줄러 트리거 실행 시간 설정


어떤 동작을 수행할 것인지 묻는 화면에서 [프로그램 시작]을 선택하고

작업 스케줄러 트리거 프로그램 시작


[프로그램/스크립트] 항목에 실행하려는 프로그램의 정확한 경로를 설정해야 하는데, 일단 [찾아보기] 버튼을 클릭하고

작업 스케줄러 프로그램 경로 설정


탐색기 화면이 열리면 실행할 파일이 있는 경로를 클릭해 들어가 실행 파일을 선택합니다.

여기서는 테스트를 위해 notepad++ 프로그램을 설정했습니다.

notepad++ 실행 파일


[프로그램/스크립트] 항목에 notepad++.exe의 경로가 표시되면 [다음] 버튼을 클릭합니다.

작업 스케줄러 자동 실행 설정


지금까지 설정한 내용들이 표시되고, 내용이 정확하면 [마침] 버튼을 클릭해 마법사를 종료합니다.

지정한 시간에 프로그램 실행


이제 작업 스케줄러의 왼쪽 창에서 [작업 스케줄러 라이브러리] 항목을 클릭해보면, 지금까지 설정한 [프로그램 실행]이라는 이름의 항목이 보입니다.

작업 스케줄러 라이브러리

여기까지 작업을 완료하면 매일 정해진 시간에 notepad++.exe 프로그램이 실행됩니다.

정해진 시간에 프로그램 종료하기

사실 저는 작업 스케줄러를 이용해 원하는 시간에 프로그램을 실행하는 것 만큼이나 원하는 시간에 실행된 프로그램을 종료하는 것이 매우 중요했습니다.


원하는 시간에 프로그램을 종료하려는 이유는 다른 포스팅에서 살펴보기로 하고, 여기서는 그 방법만 간단히 살펴보겠습니다.


프로그램을 원하는 시간에 종료하는 작업 역시, 작업 스케줄러를 이용합니다.

앞서 만들었던 [프로그램 실행] 이라는 작업과는 별도로 [기본 작업 만들기]를 실행해 새로운 기본 작업 만들기 마법사를 계속 진행해 시간 설정 등을 진행합니다.


그리고 [프로그램/스크립트] 항목에 taskkill 명령어를 이용하는데, [taskkill /IM "notepad++.exe"]와 같이 입력했습니다.

지정한 시간에 프로그램 종료 taskkill

taskkill은 실행 중인 프로세스를 종료하는데 사용하는 윈도우 내장 명령으로, /IM "notepad++.exe" 스위치와 함께 설정하면 실행 중인 notepad++.exe 이미지를 강제로 종료하게 됩니다.


taskkill /IM "notepad++.exe"를 입력한 뒤 [다음] 버튼을 클릭하면 '인수가 포함된 것 같다'는 팝업창이 뜨는데 [예] 버튼을 클릭합니다.

작업 스케줄러 taskkill 설정


이제 [프로그램 종료] 라고 설정한 작업이 만들어지고, 매일 정해진 시간에 notepad++.exe가 종료됩니다.

원하는 시간에 프로그램 종료


이제 만들어 둔 두 개의 작업 스케줄이 정상 작동하는지 기다려보니, 정해진 시간에 notepad++ 프로그램이 실행되고, 정해진 시간에 해당 프로그램이 종료되는 것을 확인할 수 있습니다.

notepad++ 실행 종료


일부 프로그램의 경우 taskkill 명령에 /T /F 스위치를 함께 지정해야 종료되기도 합니다.


/T는 프로그램이 실행되면서 함께 실행된 자식 프로세스까지 모두 종료하는 스위치이며 /F는 프로세스를 강제로 종료하도록 지정하는 스위치입니다.

프로그램 강제 종료 taskkill 스위치

제가 원하는 시간에 강제로 종료하려고 했던 인터넷 라디오 프로그램은 /IM 스위치만으로는 정상 종료되지 않았는데, /T /F 스위치를 함께 사용하니 말끔하게 종료되는 것을 확인할 수 있었습니다.


지금까지 살펴본, 작업 스케줄러를 이용한 프로그램의 실행과 종료는 각자 필요한 방식대로 사용할 수 있을 것입니다.


여기서는 작업스케줄러를 이용해 프로그램을 실행하고 작업 스케줄러와 taskkill 명령을 이용해 프로그램을 종료하는 방법만 살펴봤는데, 작업 스케줄러와 shutdown 명령어를 이용하면 원하는 시간에 컴퓨터를 종료하는 것도 얼마든지 가능합니다.


이 글을 공유하기

댓글 :: 질문 댓글은 공개글로 달아주세요. 특별한 이유없는 비밀 댓글에는 답변하지 않습니다

Designed by JB FACTORY