Windows SCHTASKS 명령어 사용법은 무엇인가요?
💡 요약 정리
- SCHTASKS는 Windows에서 예약된 작업을 관리하는 명령어입니다
- CREATE, DELETE, QUERY 세 가지 주요 기능을 제공합니다
- 로컬 및 원격 시스템에서 스케줄 작업을 생성하고 관리할 수 있습니다
SCHTASKS 명령어는 Windows 서버에서 예약된 작업을 생성, 삭제, 조회할 수 있는 명령줄 도구입니다. 서버호스팅 환경에서 정기적인 작업 을 자동화할 때 유용합니다.
1. SCHTASKS CREATE - 예약 작업 생성
로컬 또는 원격 시스템에서 관리자가 예약된 작업을 만들 수 있도록 합니다.
기본 구문
SCHTASKS /Create [/S system [/U username [/P password]]]
[/RU username [/RP password]] /SC schedule [/MO modifier] [/D day]
[/I idletime] /TN taskname /TR taskrun [/ST starttime] [/M months]
[/SD startdate] [/ED enddate]
주요 매개 변수
시스템 연결 옵션
| 매개변수 | 설명 |
|---|---|
/S system | 연결할 원격 시스템을 지정합니다. 생략 시 로컬 시스템이 기본값입니다 |
/U username | 명령을 실행할 사용자 컨텍스트를 지정합니다 |
/P password | 제공된 사용자 컨텍스트에 대한 암호를 지정합니다 |
작업 실행 계정 설정
| 매개변수 | 설명 |
|---|---|
/RU username | 작업을 실행할 사용자 계정을 지정합니다. 시스템 계정의 경우 "", "NT AUTHORITY\SYSTEM" 또는 "SYSTEM" 사용 |
/RP password | 사용자에 대한 암호를 지정합니다. 암호를 묻도록 하려면 "*" 또는 비어 있어야 합니다 |
일정 설정
| 매개변수 | 설명 |
|---|---|
/SC schedule | 일정 빈도 지정: MINUTE, HOURLY, DAILY, WEEKLY, MONTHLY, ONCE, ONSTART, ONLOGON, ONIDLE |
/MO modifier | 일정이 반복되는 것을 자세 하게 제어 |
/D days | 작업을 실행할 요일 지정: MON, TUE, WED, THU, FRI, SAT, SUN 또는 1-31 (월별 날짜) |
/M months | 달 지정: JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC |
작업 정보
| 매개변수 | 설명 |
|---|---|
/TN taskname | 예약된 작업을 식별하는 고유한 이름 |
/TR taskrun | 예약된 작업에서 실행할 경로 및 파일 이름 (예: C:\windows\system32\calc.exe) |
/ST starttime | 작업 실행 시간 (HH:MM:SS 24시간 형식, 예: 14:30:00) |
/SD startdate | 작업 실행 시작 날짜 (yyyy/mm/dd 형식) |
/ED enddate | 작업 실행 종료 날짜 (yyyy/mm/dd 형식) |
/I idletime | ONIDLE 작업 실행 전 대기할 유휴 시간 (1-999분) |
수정자 (Modifier) 값
일정 유형에 따른 /MO 스위치 유효 값:
| 일정 유형 | 수정자 값 |
|---|---|
| MINUTE | 1-1439분 |
| HOURLY | 1-23시간 |
| DAILY | 1-365일 |
| WEEKLY | 1-52주 |
| MONTHLY | 1-12 또는 FIRST, SECOND, THIRD, FOURTH, LAST, LASTDAY |
| ONCE, ONSTART, ONLOGON, ONIDLE | 수정자 없음 |
사용 예시
매시간 실행
SCHTASKS /Create /S system /U user /P password /RU runasuser
/RP runaspassword /SC HOURLY /TN rtest1 /TR notepad
5분마다 실행
SCHTASKS /Create /S system /U domainuser /P password /SC MINUTE
/MO 5 /TN rtest2 /TR calc.exe /ST 12:00:00
/SD 2001/12/30 /ED 2001/12/30 /RU runasuser /RP
매월 첫 번째 일요일 실행
SCHTASKS /Create /SC MONTHLY /MO first /D SUN /TN game
/TR c:\windows\system32\freecell
매주 실행
SCHTASKS /Create /S system /U user /P password /RU runasuser
/RP runaspassword /SC WEEKLY /TN test1 /TR notepad.exe
2. SCHTASKS DELETE - 예약 작업 삭제
하나 이상의 예약된 작업을 삭제합니다.
기본 구문
SCHTASKS /Delete [/S system [/U username [/P password]]] /TN taskname [/F]
주요 매개 변수
| 매개변수 | 설명 |
|---|---|
/S system | 연결할 원격 시스템 지정 |
/U username | 명령을 실행할 사용자 컨텍스트 지정 |
/P password | 제공된 사용자 컨텍스트에 대한 암호 지정 |
/TN taskname | 삭제할 예약된 작업 이름. "*" 와일드카드로 모든 작업 삭제 가능 |
/F | 강제 삭제. 작업 실행 중 경고 표시 안 함 |
사용 예시
모든 작업 삭제
SCHTASKS /Delete /TN * /F
특정 작업 삭제
SCHTASKS /Delete /TN "Backup and Restore"
원격 시스템의 작업 삭제
SCHTASKS /Delete /S system /U user /P password /TN "Start Restore"
강제 삭제
SCHTASKS /Delete /S system /U user /P password /TN "Start Backup" /F
3. SCHTASKS QUERY - 예약 작업 조회
로컬 또는 원격 시스템의 예약된 작업을 표시합니다.
기본 구문
SCHTASKS /Query [/S system [/U username [/P password]]] [/FO format]
[/NH] [/V] [/?]
주요 매개 변수
| 매개변수 | 설명 |
|---|---|
/S system | 연결할 원격 시스템 지정 |
/U username | 명령을 실행할 사용자 컨텍스트 지정 |
/P password | 제공된 사용자 컨텍스트에 대한 암호 지정 |
/FO format | 출력 형식 지정: TABLE, LIST, CSV |
/NH | 출력에 열 헤더 표시 안 함 (TABLE, CSV 형식만 유효) |
/V | 추가 출력 표시 (상세 정보) |
사용 예시
기본 조회
SCHTASKS /Query
원격 시스템 조회
SCHTASKS /Query /S system /U user /P password
상세 정보 LIST 형식으로 조회
SCHTASKS /Query /FO LIST /V /S system /U user /P password
헤더 없이 TABLE 형식으로 조회
SCHTASKS /Query /FO TABLE /NH /V
4. 실전 활용 팁
① 정기 백업 스케줄 생성
매일 새벽 2시에 백업 스크립트를 실행하는 작업:
SCHTASKS /Create /SC DAILY /TN "Daily Backup"
/TR "C:\backup\backup.bat" /ST 02:00:00
② 서버 재부팅 시 자동 실행
서버 시작 시 자동으로 실행되는 작업:
SCHTASKS /Create /SC ONSTART /TN "Startup Script"
/TR "C:\scripts\startup.bat" /RU SYSTEM
③ 유휴 시간에 작업 실행
서버가 10분간 유휴 상태일 때 실행:
SCHTASKS /Create /SC ONIDLE /I 10 /TN "Idle Task"
/TR "C:\scripts\maintenance.bat"
중요 참고사항
- 원격 시스템에서 작업을 생성하려면 관리자 권한이 필요합니다
/RU SYSTEM으로 설정하면 시스템 계정으로 작업이 실행됩니다- 암호를 묻도록 하려면
/RP *를 사용하세요 - 작업 실행 시 사용자 계정에 적절한 권한이 있는지 확인하세요