Windows PowerShell을 사용하여 Windows 11/10에서 예약된 작업을 생성하거나 삭제하고 싶다면, 이 가이드가 도움이 될 것입니다. 작업 스케줄러(Task Scheduler)를 직접 열 필요 없이, 몇 가지 명령어만 실행하면 손쉽게 처리할 수 있습니다.
작업 스케줄러는 Windows의 가장 유용한 도구 중 하나로, 지정한 시간에 자동으로 작업을 실행할 수 있게 해줍니다. 메모장 같은 앱을 여는 것부터 PowerShell 스크립트 실행까지, 다양한 작업을 예약하여 자동화할 수 있습니다.
PowerShell로 예약 작업 만들기
PowerShell을 사용하여 Windows에서 예약 작업을 생성하려면 아래 단계를 따르세요.
- 작업 표시줄 검색창에 powershell을 입력합니다.
- 관리자 권한으로 실행(Run as administrator)을 클릭합니다.
- UAC(사용자 계정 컨트롤) 창이 나타나면 예(Yes) 버튼을 클릭합니다.
- 실행할 동작을 저장하기 위해 $action 변수를 입력합니다.
- 예약 작업의 실행 시간을 저장하기 위해 $trigger 변수를 입력합니다.
- 마지막으로 예약 작업을 등록하는 명령어를 입력합니다.
각 단계를 좀 더 자세히 살펴보겠습니다.
1. 관리자 권한으로 PowerShell 열기
먼저 관리자 권한으로 Windows PowerShell을 실행해야 합니다. 작업 표시줄 검색창에 "powershell"을 입력하고 관리자 권한으로 실행을 클릭하세요. UAC 프롬프트가 나타나면 예를 클릭합니다.
2. 실행할 작업(Action) 정의하기
PowerShell 창이 열리면 다음 명령어를 입력하여 실행할 동작을 변수에 저장합니다.
$action = New-ScheduledTaskAction -Execute '앱-경로'
여기서 앱-경로 부분은 실제로 실행하려는 프로그램의 전체 경로로 바꿔야 합니다. 예를 들어 메모장을 실행하려면 notepad.exe를 입력하면 되고, 64비트 Windows에서 구글 크롬을 실행하려면 다음 경로를 사용합니다.
C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
전체 명령어는 다음과 같은 형태가 됩니다.
$action = New-ScheduledTaskAction -Execute 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'
만약 PowerShell 스크립트를 실행하고 싶다면 -argument 옵션을 사용하여 스크립트 경로를 지정해야 합니다. 이 경우 명령어는 다음과 같습니다.
New-ScheduledTaskAction -Execute 'powershell.exe' -argument 스크립트-경로
3. 실행 시간(Trigger) 설정하기
다음으로 작업을 실행할 시간을 지정합니다. 기본 명령어 형식은 다음과 같습니다.
$trigger = New-ScheduledTaskTrigger -Once -At 06:30PM
위 명령어는 당일 오후 6시 30분(18:30)에 한 번만 작업을 실행한다는 의미입니다. 필요에 따라 -Daily(매일), -Weekly(매주), -Monthly(매월) 등 다양한 반복 옵션을 사용할 수 있습니다. 시간은 12시간 또는 24시간 형식 모두 지정 가능하며, 12시간 형식을 사용할 경우 AM/PM을 반드시 함께 입력해야 합니다.
4. 예약 작업 등록하기
동작과 트리거가 준비되면 이제 실제로 작업을 등록합니다. 다음 명령어를 입력하세요.
Register-ScheduledTask -Action $action -Trigger $trigger -TaskPath "DemoName" -TaskName "DemoTask" -Description "DemoDescription"
DemoName, DemoTask, DemoDescription 부분은 각각 원하는 작업 경로, 작업 이름, 설명으로 변경하는 것을 잊지 마세요.
명령어가 성공적으로 실행되면 등록된 작업 정보가 화면에 표시됩니다. 이후 작업 스케줄러를 열어 해당 작업이 정상적으로 등록되었는지 확인할 수도 있습니다.
PowerShell로 예약 작업 삭제하기
PowerShell을 사용하여 예약된 작업을 삭제하려면 아래 단계를 따르세요.
- 작업 표시줄 검색창에 powershell을 입력합니다.
- 관리자 권한으로 실행을 클릭합니다.
- 예 버튼을 클릭합니다.
- 삭제할 작업을 선택하는 명령어를 입력합니다.
- Unregister 명령어로 작업을 삭제합니다.
먼저 관리자 권한으로 PowerShell 창을 연 뒤, 다음 명령어를 입력하여 삭제하려는 작업이 존재하는지 확인합니다.
Get-ScheduledTask -TaskName "DemoTask"
DemoTask 부분은 실제 작업 이름으로 바꾸세요. 그런 다음 아래 명령어를 입력하여 작업을 삭제합니다.
Unregister-ScheduledTask -TaskName "DemoTask" -Confirm:$false
삭제가 제대로 되었는지 확인하려면 첫 번째 명령어(Get-ScheduledTask)를 다시 입력해 보면 됩니다. 오류 메시지가 나타난다면 해당 작업이 성공적으로 제거된 것입니다.
여기까지입니다. 이 가이드가 PowerShell을 활용한 예약 작업 관리에 도움이 되기를 바랍니다.