Windows CMD 명령어 치트시트
클래식 Windows 명령 프롬프트(cmd.exe) 빠른 참조: 파일/디렉터리 작업, 텍스트 검색, 시스템 정보, 네트워킹, 배치 스크립팅 — 자주 쓰는 옵션과 실전 예시까지 정리했습니다.
명령어 40개
탐색 & 도움말
cd /d <path>현재 디렉터리 변경; /d 는 드라이브 문자까지 함께 바꿉니다.
cd /d D:\projects\appdir [<path>]파일과 하위 디렉터리를 크기, 날짜, 속성과 함께 나열합니다.
/a 숨김/시스템 표시; /s 재귀; /o 날짜/크기 정렬; /b 베어 형식; /w 와이드
dir /a /o:-d /b C:\logs<cmd> /?어떤 명령의 내장 도움말 표시(예: 'robocopy /?').
xcopy /?tree [<path>]드라이브 또는 경로의 폴더 구조를 그래픽으로 표시합니다.
/F 파일 포함; /A ASCII 문자 사용; /J 주니퍼 형식
tree C:\projects /F | more파일 & 디렉터리
md <dir> (or mkdir)디렉터리 한 개 이상을 만듭니다.
md C:\app\logs 2>nulrd <dir> (or rmdir)디렉터리 한 개 이상을 제거(삭제)합니다.
/s 파일과 하위 디렉터리도 제거; /q quiet 모드(프롬프트 없음)
rd /s /q C:\app\tmpdel <pattern>파일 한 개 이상을 삭제합니다.
/f 읽기 전용 강제; /s 하위 디렉터리에 적용; /q quiet; /p 파일마다 확인
del /s /q C:\app\logs\*.logcopy <src> <dest>파일 한 개 이상을 다른 위치로 복사합니다.
/y 덮어쓰기 확인 안 함; /v 검증; /d 대상 복호화; /b binary
copy /y C:\src\config.json D:\app\config.jsonmove <src> <dest>파일을 이동하거나 파일/디렉터리 이름을 변경합니다.
/y 덮어쓰기; /-y 확인
move /y C:\app\old.log D:\archive\ren <old> <new>파일 또는 디렉터리 이름 변경(파일 이름만, 전체 경로 X).
ren report.txt report-2026.txtxcopy <src> <dest>파일, 디렉터리, 하위 디렉터리 복사(레거시; robocopy 로 대체됨).
/s /e 하위 디렉터리; /y 덮어쓰기; /i 대상이 디렉터리라고 가정; /h 숨김/시스템; /d 최신만
xcopy /s /e /y /d C:\src D:\dstrobocopy <src> <dest>재시도, 로깅, 미러링을 갖춘 대용량 작업용 강력한 파일 복사.
/MIR 미러; /MOV 이동(원본 삭제); /E 빈 디렉터리 포함; /Z 재시작 가능; /MT:n 멀티스레드; /LOG:<file>; /R:n 재시도; /W:n 대기
robocopy C:\src \\backup\daily /MIR /Z /MT:8 /LOG+:C:\logs\robocopy.txtattrib [+/-<attr>] <path>파일 속성 변경: Read-only (R), Hidden (H), System (S), Archive (A).
/s 재귀; /d 폴더 처리; +R -R 읽기 전용 켜기/끄기
attrib +R +H secret\config.inimklink [[/D] | /H] <link> <target>파일 또는 디렉터리에 대한 심볼릭(/D) 또는 하드(/H) 링크를 만듭니다.
/D 디렉터리 심볼릭; /H 하드 링크; /J 디렉터리 정션
mklink /D C:\current C:\app\v2텍스트 & 검색
type <file>텍스트 파일의 전체 내용을 화면에 표시합니다.
type C:\app\config.json | moremore < file한 화면씩 페이지 단위로 출력(Unix less 처럼 동작).
type big.log | morefind "<str>" <files>한 개 이상의 파일에서 리터럴 문자열을 검색(레거시; 정규식 X).
/i 대소문자 무시; /v 반전; /n 줄 번호; /c 개수만
find /i /n "TODO" *.mdfindstr [/R] <pattern> <files>리터럴 문자열 또는 정규식으로 텍스트 검색; 여러 패턴 지원.
/R 정규식; /S 하위 디렉터리; /I 대소문자 무시; /N 줄 번호; /M 매치 있는 파일; /V 반전; /C:"text" 리터럴 문자열
findstr /R /S /I /N "TODO\|FIXME" *.cssort [/R] [<file>]입력(또는 파일)을 알파벳/숫자로 정렬; sort 는 /+N 으로 정렬 키 위치를 지원.
/R 역순; /+N N 위치 문자로 정렬; [drive1:][path1] [drive2:][path2] 입력/출력
sort /R /+5 unsorted.txt sorted.txtfc /b file1 file2두 파일을 비교; /b 는 바이트 단위(binary).
/b 바이너리 비교; /a 축약 출력; /l 줄 단위; /n 줄 번호 표시
fc /b file1.bin file2.bin시스템 & 디스크
systeminfo호스트, OS, 메모리, 네트워크의 상세 구성.
systeminfo /fo csv > sysinfo.csvtasklist [/FI <filter>]PID, 세션, 메모리, 이미지 이름과 함께 실행 중인 프로세스 목록.
/v verbose; /FI 필터(예: "IMAGENAME eq cmd.exe"); /M 모듈
tasklist /FI "IMAGENAME eq node.exe" /FO csvtaskkill /PID <pid> [/F]PID 로 프로세스 종료(또는 /IM 으로 이미지 이름).
/F 강제; /IM 이미지 이름; /PID pid; /T 트리(자식 포함); /FI 필터
taskkill /IM chrome.exe /Fsc \[\\host] query|start|stop <service>서비스 제어 관리자와 통신; 서비스 조회/설정.
query state= all; start / stop; config starts auto|manual|disabled; create / delete
sc query state= all | moreshutdown [/s|/r|/a]로컬/원격 컴퓨터 로그오프, 재시작, 종료.
/s 종료; /r 재시작; /a 중단; /t N 초; /c "comment"; /m \\host; /f 앱 강제 종료
shutdown /r /t 60 /c "Windows Update"diskpart인터랙티브 디스크 파티셔닝 유틸리티(관리자 권한); list disk/partition/volume 지원.
list disk / select disk N / clean / create partition primary / format fs=ntfs quick / assign letter=D
diskpart /s script.txtchkdsk <drive>디스크 오류를 검사하고 읽을 수 있는 데이터를 복구합니다.
/f 오류 수정; /r 불량 섹터 복구; /x 강제 마운트 해제; /v verbose
chkdsk D: /f /r /xvol <drive>:드라이브의 볼륨 레이블과 일련 번호를 표시합니다.
vol C:네트워킹
ipconfig [/all|/flushdns]TCP/IP 설정 표시; /flushdns 는 DNS 클라이언트 캐시를 비웁니다.
/all 상세; /release / renew DHCP; /flushdns; /displaydns
ipconfig /all && ipconfig /flushdnsping [-n <count>] <host>ICMP echo 요청을 보내 도달 가능성과 지연을 테스트합니다(기본 4회).
-n 횟수; -t 연속; -l 크기; -w 타임아웃(ms); -4 / -6 버전 강제
ping -n 6 8.8.8.8tracert [-d] [-h <hops>] <host>호스트까지 패킷이 거치는 경로를 추적; -d 는 역방향 DNS 를 건너뜁니다.
-h 최대 홉; -w 타임아웃; -d DNS 없음; -4 / -6
tracert -d -h 15 google.comnslookup <host>DNS 조회 — 인터랙티브/비인터랙티브 모드.
server 8.8.8.8; type=A/AAAA/MX/CNAME/TXT; -timeout=N
nslookup example.com 1.1.1.1netstat [-an] [-b]활성 TCP/UDP 연결, 리스닝 포트, 소유 프로세스를 표시합니다.
-a 모두; -b 소유 실행 파일; -n 숫자; -o PID; -p tcp|udp; -r 라우팅 테이블
netstat -ano | findstr :443net [user|localgroup|share|start|stop|use|time|view]사용자 계정, 공유, 서비스, 매핑된 드라이브 등을 다루는 거대한 잡동사니.
net user <name> /add; net localgroup Administrators; net share; net use x: \\host\share
net user alice P@ssw0rd! /add && net localgroup Administrators alice /add배치 스크립팅
echo [on|off|<text>]명령 에코 토글 또는 줄바꿈 없이 텍스트 출력(대신 set /p 사용).
@echo off 접두사 비활성화; & echo. 로 빈 줄 출력
@echo off & echo Starting build...set <var>=<value>자식 프로세스에 보이는 환경변수를 정의하거나 변경합니다.
set /P var="prompt" stdin 으로 읽기; set /A var=expr 정수 연산
set /A total = 5 * 20 + 3if [/i] [not] <condition> cmd조건부 실행 — 문자열, 숫자, errorlevel, 파일 존재.
if exist file; if %var% == value; if %errorlevel% neq 0; if defined
if exist .git (git status) else (git init)for /f [...] %%<var> in (...) do <cmd>루프 구문: /f (텍스트/명령 출력 파싱), /r (재귀), /d (디렉터리), 일반(집합).
tokens / delims / skip / usebackq for cmd; 스크립트에서는 %%i, 명령줄에서는 %i
for /f "tokens=2 delims=:" %%p in ('reg query "HKCU\Software\Git" /v InstallPath') do set GIT_HOME=%%pcall <script> [<args>]다른 배치 스크립트를 호출하고 복귀(일반 호출은 호출자를 중단).
? 도움말 표시; /e:on 확장 활성화; /v:on 지연된 확장
call utils\env.bat && call build\compile.batgoto / rem / exit레이블(goto :label), 주석(rem), 명시적 종료 코드.
exit /b <code>; rem ←→ ... reset 으로 주석 블록
exit /b 1치트시트 버전 1.0.0
Windows cmd.exe 10+ 대응