REM =======================================
REM ■ 기본 명령
REM =======================================
REM or ::
: 배치파일 속에 달고 싶은 설명, 주석
PAUSE
: 배치파일 실행중 일시 멈추게함
ECHO "문자열"
: 에코명령 다음에 오는 문자열을 화면에 나타낸다.
ECHO ON
: 이후부터 '명령어'라인을 화면에 보인다.
ECHO OFF
: 이후 실행되는 명령어 라인을 화면에 나타내지 않는다.
@ECHO OFF
: 'ECHO OFF'라는 그 자체까지 보이지 않게 한다.
ECHO.
: 개행문자만 출력
ECHO|SET /P=,
: 개행문자를 출력하지 않고 ','만 출력
REM =======================================
REM ■ 긴 줄 나누기
REM =======================================
copy file1.txt file2.txt →
copy file1.txt^
file2.txt
REM =======================================
REM ■ 배치파일 안에서 다른 배치파일 부르기
REM =======================================
CALL ANOTHER.BAT
REM =======================================
REM ■ 설정파일 읽어오기
REM =======================================
SET "CONFIG_BATCH_FILE=CONFIG.BAT"
IF NOT EXIST %CONFIG_BATCH_FILE% (
ECHO %CONFIG_BATCH_FILE% 파일이 없습니다.
EXIT /B 1
)
CALL %CONFIG_BATCH_FILE%
REM =======================================
REM ■ 커맨드 실행 성공여부 판단
REM =======================================
wget --no-check-certificate "https://www.test.com/index.html"
IF %ERRORLEVEL% NEQ 0 (
ECHO index.html not found.
EXIT /B
)
REM =======================================
REM ■ 변수
REM =======================================
c:\>명령어 파일1 파일2 파일3 ...
%0 %1 %2 %3
%0 : 예제.CMD
%~0 : C:\USERS\SNOOPY\DESKTOP\예제.CMD
%~D0 : C:
%~DP0 : C:\USERS\SNOOPY\DESKTOP\
%~N0 : 예제
%~P0 : \USERS\SNOOPY\DESKTOP\
%~X0 : .CMD
%변수명:찾을문자열=치환문자열%
%PATH:~10,5% : 11번째 문자부터 5개 문자만 추출
%PATH:~0,-2% : PATH의 2개 문자를 제외한 모든 문자를 추출
%PATH:~-10% : 마지막 10문자만 추출
%_test:12345=Hello % : "12345"를 "Hello "로 문자열 치환
REM =======================================
REM ■ FOR 루프에서 경로변수 사용하기
REM =======================================
SET "SRC_DIR=m:\backup\images"
SET "DST_DIR=.\icons"
SET /A FILE_COUNT=0
IF NOT EXIST %DST_DIR% MKDIR %DST_DIR%
FOR /F "TOKENS=*" %%A IN ('DIR /B /ON %SRC_DIR%\*.PNG') DO (
ECHO "%DST_DIR%\%%~nA%.ico"
SET /A FILE_COUNT+=1
)
ECHO TOTAL: %FILE_COUNT%
REM =======================================
REM ■ 실행 결과를 변수에 넣기
REM =======================================
FOR /F "TOKENS=*" %%A IN ('DIR /B /ON GoogleChromePortable_*.EXE') DO (
SET "CHROME_INSTALLER=%%A"
)
REM =======================================
REM ■ 함수
REM =======================================
CALL :FUNC_GETTOKEN "AnalysisUploadToken" 90
PAUSE
EXIT /B %ERRORLEVEL%
:FUNC_GETTOKEN
CALL %FORTIFY_CLIENT% -url %SSC_URL% -user %SSC_USER% -password %SSC_PW% token -gettoken %1 -daysToLive %2
EXIT /B /0
REM =======================================
REM ■ 멀티라인 사용 (^문자 사용)
REM =======================================
XCOPY.EXE FILE1.TXT^
"C:\Program Files ^(x86^)\MyApp\"^
FILE2.TXT /F /Q /D
REM =======================================
REM ■ 배치파일이 있는 경로로 돌아오기
REM =======================================
PUSHD %~DP0 또는 CD /D %~DP0
REM =======================================
REM ■ grep 처럼 문자열 찾기
REM =======================================
DIR /B | FINDSTR /R /C:"text"
REM =======================================
REM ■ IF 문법
REM =======================================
IF [NOT] EXIST filename (command) ELSE (command)
IF [NOT] DEFINED variable command
IF %ERRORLEVEL% NEQ 0 Echo An error was found
비교 부호
== : 문자열이 같은가 비교
/I : 대소문자 비교 활성화
EQU : Equal
NEQ : Not equal
LSS : Less than <
LEQ : Less than or Equal <=
GTR : Greater than >
GEQ : Greater than or equal >=
IF EXIST *.BAK DEL *.BAK
IF NOT EXIST *.BAK ECHO BAK 파일이 없습니다.
IF "%1" == "A" ECHO TESTING A
IF NOT "%1" == "A" ECHO IT IS NOT EQUAL.
SET A=SNOOPY
IF /I %A%==SNOOPY ECHO %A%는 SNOOPY와 같고 대소문자 구분 안함.
IF EXIST %WINDIR%\SYSWOW64 (
ECHO 이 윈도우는 64비트입니다.
) ELSE (
ECHO 이 윈도우는 64비트가 아닙니다.
)
IF "!FILESIZE1!" EQU "!FILESIZE2!" (
ECHO "ERROR: 패치 전후 파일 사이즈가 같습니다.
)
REM =======================================
REM ■ FOR 문법
REM =======================================
FOR %%변수 IN (셋트 파라미터) DO [명령어] %%변수
FOR %%Z IN (*.BAT *.DOC *.TXT *.CAP) DO TYPE %%Z
REM 여러개의 XML파일을 하나로 합치는 루틴
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
SET /A FILE_COUNT=0
FOR /F "TOKENS=*" %%A IN ('DIR /B /ON *.XML') DO (
IF !FILE_COUNT! EQU 0 (
CALL SET COPY_ARGUMENT="%%A"
) ELSE (
CALL SET COPY_ARGUMENT=%%COPY_ARGUMENT%%+"%%A"
)
SET /A FILE_COUNT+=1
)
COPY /B /V /Y %COPY_ARGUMENT% %OUTPUT_FILE%
ECHO ### TOTAL FILE COUNT: %FILE_COUNT% ###
ENDLOCAL
REM =======================================
REM = Edge Version 알아내기
REM =======================================
SET "EDGE_VER=0"
REG QUERY "HKCU\Software\Microsoft\Edge\BLBeacon" /V VERSION>tmp.$$$
FOR /F "USEBACKQ TOKENS=1,2,3,4 DELIMS= " %%A IN ("tmp.$$$") DO (
IF %%C NEQ "" SET EDGE_VER=%%C
)
IF %EDGE_VER% == 0 (
ECHO Edge Version not found.
EXIT /B
)
ECHO EDGE_VER=%EDGE_VER%
REM =======================================
REM ■ 텍스트 파일 읽어오기
REM =======================================
SETLOCAL ENABLEDELAYEDEXPANSION
FOR /F "TOKENS=* DELIMS=" %%X IN (TEXTFILE.TXT) DO (
SET "LINE_STR=%%X"
ECHO !LINE_STR!
)
REM 파일 전체를 읽어서 FILE_BUFFER 변수에 넣는다.
SET /P FILE_BUFFER=<TEXTFILE.TXT
ECHO !FILE_BUFFER!
ENDLOCAL
REM =======================================
REM ■ 문자열 입력 받기
REM =======================================
SET /P INPUT_VAL="latitude(위도), longitude(경도): "
REM =======================================
REM ■ Are you sure ? 처리
REM =======================================
SET /P ANSWER1=정말 실행 하시겠습니까(Y/N)?
IF /I "%ANSWER1%" NEQ "Y" EXIT /B 0
REM =======================================
REM ■ 문자열 파싱 예제
REM =======================================
FOR /F "TOKENS=1-2 DELIMS=," %%A IN ("%INPUT_VAL%") DO (
SET LATITUDE=%%A
SET LONGITUDE=%%B
)
REM =======================================
REM ■ 문자열 양옆 불필요한 스페이스 없애기
REM =======================================
FOR /F "TOKENS=* DELIMS= " %%A IN ("%LATITUDE%") DO SET LATITUDE=%%A
FOR /F "TOKENS=* DELIMS= " %%A IN ("%LONGITUDE%") DO SET LONGITUDE=%%A
REM =======================================
REM ■ argc 인수 카운팅
REM =======================================
SET /A "ARGC=0"
FOR %%X IN (%*) DO SET /A "ARGC+=1"
ECHO ARGC=%ARGC%
REM =======================================
REM ■ GOTO 문법
REM =======================================
:LABEL
GOTO LABEL
REM =======================================
REM ■ 명령 프롬프트창 셋팅 관련 명령어
REM =======================================
TITLE CMD창 타이틀
MODE CON COLS=120 LINES=40
COLOR 1F
CLS
REM =======================================
REM ■ 현재 요일을 1~7의 숫자로 구한다.
REM =======================================
FOR /F "SKIP=2 TOKENS=2-4 DELIMS=," %%A IN ('WMIC Path Win32_LocalTime Get DayOfWeek /Format:csv') DO SET DAYNUMBER=%%A
ECHO %DAYNUMBER%
REM =======================================
REM ■ 배열 (CALL에 %%사용)
REM =======================================
SET "PROJECT_BAT[0]=D:\test0.bat"
SET "PROJECT_BAT[1]=D:\test1.bat"
SET "PROJECT_BAT[2]=D:\test2.bat"
SET /A "i=0"
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
:LABEL_NEXT
IF DEFINED PROJECT_BAT[%i%] (
CALL ECHO %%PROJECT_BAT[%i%]%%
REM OR
ECHO !PROJECT_BAT[%i%]!
SET /A "i+=1"
GOTO :LABEL_NEXT
)
ENDLOCAL
REM =======================================
REM ■ Arguments 처리
REM =======================================
REM Arguments 수를 카운팅 한다.
SET ARGC=0
FOR %%X IN (%*) DO SET /A ARGC+=1
REM Arguments 수가 2보다 작으면 중지
IF %ARGC% LSS 2 (
ECHO "Usage:"
ECHO "%0 "
EXIT /B
)
REM =======================================
REM ■ 명령행 인수 처리
REM =======================================
SET ARGC=0
FOR %%X IN (%*) DO SET /A ARGC+=1
IF %ARGC% LSS 1 (
CALL :FUNC_USAGE %0
EXIT /B 1
)
REM =======================================
REM ■ CODEPAGE를 UTF-8로 변경
REM =======================================
CHCP 65001 1> NUL 2> NUL
REM =======================================
REM ■ 설정파일 파싱 (#은 주석 처리)
REM =======================================
FOR /F "EOL=# TOKENS=1,2 DELIMS==" %%A IN (%CONFIG_FILE%) DO (
IF %%A==MAKER SET MAKER=%%B
IF %%A==MODEL SET MODEL=%%B
IF %%A==ARTIST SET ARTIST=%%B
)
REM =======================================
REM ■ 타임스탬프 변수 만들기
REM =======================================
SET TIMESTAMP_VAL=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%_%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%
SET TIMESTAMP_VAL=%TIMESTAMP_VAL: =0%
ECHO TIMESTAMP_VAL: "%TIMESTAMP_VAL%"
결과: TIMESTAMP_VAL: "20210603_173349"
REM =======================================
REM ■ 오래된 로그 삭제 처리
REM =======================================
D:\work\logs에서 *.log 파일 중 30일 이전 파일은 삭제한다.
FORFILES /P "D:\work\logs" /M "*.log" /D -30 /C "cmd /c del /q @path"
REM =======================================
REM ■ 사용자의 SID 얻고 %INSTALL_REG%
REM 에서 "___SID___"를 SID로 문자열 변환
REM 하여 %TMP_REG%로 출력
REM =======================================
set "TMP_REG=__tmp_reg.reg"
for /f tokens^=3^ delims^=^" %%a in (
'whoami /user /FO CSV /NH') do set SID_STR=%%a
echo SID: %SID_STR%
setlocal EnableExtensions EnableDelayedExpansion
for /f "delims=" %%A in ('type "%INSTALL_REG%"') do (
set "string=%%A"
set "modified=!string:___SID___=%SID_STR%!"
echo !modified!>>"%TMP_REG%"
)
endlocal
REM =======================================
REM ■ 특수 문자 사용
REM =======================================
REM 큰따옴표 안의 문자열에서는 꼭 필요하지 않을 수 있음.
% → %%
REM 큰따옴표 안의 문자열에서는 꼭 필요하지 않을 수 있지만 오류는 없음.
^ → ^^
& → ^&
< → ^<
> → ^>
| → ^|
REM backq 이 사용되지 않는 경우 FOR /F "subject" (괄호 사이의 것) 인 경우에만 사용.
' → ^'
REM backq 이 사용되는 경우 FOR /F "subject" (괄호 사이의 것) 인 경우에만 사용.
` → ^`
REM 큰따옴표 처리된 문자열이라 해도 FOR /F "subject"(괄호 사이의 것)인 경우에만 사용.
, → ^,
; → ^;
= → ^=
( → ^(
) → ^)
REM DELAYED VARIABLE EXPANSION 이 활성화 된 경우에만 사용.
! → ^^!
REM FIND 서치패턴의 안에서만 사용.
" → ""
REM FINDSTR의 regex 패턴인 경우에만 사용.
\ → \\
[ → \[
] → \]
" → \"
. → \.
* → \*
REM =======================================
REM ■ 유용한 함수 모음
REM =======================================
REM #######################################################
REM #
REM # FUNC_GET_TASKLIST <ImageName>
REM # 함수: 현재 실행중인 프로세스 갯수 알아내기
REM #
REM # ex) CALL :FUNC_GET_TASKLIST "sourceanalyzer.exe"
REM #
REM #######################################################
:FUNC_GET_TASKLIST
SET /A PROCESS_COUNT=0
FOR /F "TOKENS=*" %%A IN ('TASKLIST /FI "IMAGENAME EQ %1" /FO CSV') DO (
SET /A PROCESS_COUNT+=1
)
SET /A PROCESS_COUNT-=1
GOTO :EOF
REM #######################################################
REM #
REM # FUNC_SLEEP <Second>
REM # 함수: 지정된 초만큼 기다린다.
REM #
REM #######################################################
:FUNC_SLEEP
TIMEOUT %1 > NUL
GOTO :EOF
REM #######################################################
REM #
REM # FUNC_DEL_OLDFILES <Directory> <SearchMask> <Days>
REM # 함수: 특정 디렉토리에서 Days일이 지난 파일을 삭제한다.
REM # ex) CALL :FUNC_DEL_OLDFILES "D:\settings" "*.*" 30
REM #
REM #######################################################
:FUNC_DEL_OLDFILES
FORFILES /S /P %1 /M %2 /D -%3 /C "CMD /C DEL /F /Q @path" 2> NUL
GOTO :EOF
REM #######################################################
REM #
REM # FUNC_LFTP_SEND <addr> <id> <pw> <src> <dst>
REM # 함수: ftp 또는 sftp로 파일 하나를 전송한다.
REM # ex) CALL :FUNC_LFTP_SEND "sftp://10.10.10.31:22" "root" "pass1234" "/cygdrive/d/0_tmp/ttt/iphone.sh" "/work"
REM #
REM #######################################################
:FUNC_LFTP_SEND
.\cmd_utils\lftp -u "%2,%3" -e "cache off; set sftp:charset utf8; set sftp:auto-confirm yes; set net:timeout 60; set net:reconnect-interval-base 5; set net:max-retries 10; cd %5; put %4; exit" %1
GOTO :EOF
REM #######################################################
REM #
REM # FUNC_STRLEN STRING [RTNVAR]
REM # 함수: 문자열 변수의 문자열 길이를 반환한다.
REM # ex) CALL :FUNC_STRLEN "%PROJECT_NAME%" LEN
REM # ECHO LEN IS %LEN%
REM #
REM #######################################################
:FUNC_STRLEN
SETLOCAL ENABLEDELAYEDEXPANSION
SET "S=#%~1"
SET "LEN=0"
FOR %%N IN (4096 2048 1024 512 256 128 64 32 16 8 4 2 1) DO (
IF "!S:~%%N,1!" NEQ "" (
SET /A "LEN+=%%N"
SET "S=!S:~%%N!"
)
)
ENDLOCAL&IF "%~2" NEQ "" (SET %~2=%LEN%) ELSE ECHO %LEN%
GOTO :EOF
REM #######################################################
REM #
REM # FUNC_FNCONV_FPR <filename>
REM # 함수: 확장자를 .fpr로 바꿔서 %FPR_FILE%로 반환한다.
REM #
REM #######################################################
:FUNC_FNCONV_FPR
SET "TMP_FN1=%~N1"
SET "FPR_FILE=%TMP_FN1%.fpr"
GOTO :EOF
REM #######################################################
REM #
REM # FUNC_WINPATH2CYGPATH <Directory>
REM # 함수: 윈도우 PATH를 Cygwin PATH로 변경하여 CYGPATH 변수로 반환
REM # ex) CALL :FUNC_WINPATH2CYGPATH %MBS_PATH% CYGPATH
REM #
REM #######################################################
:FUNC_WINPATH2CYGPATH
SET "ARG1=%1"
SET CONVSTR1=%ARG1:\=/%
SET CONVSTR2=%CONVSTR1:~0,3%
CALL :FUNC_LOCASE CONVSTR2
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
FOR %%A IN (a b c d e f g h i j k l m n o p q r s t u v w x y z) DO (
SET "DRIVESTR1=%%A"
IF "%CONVSTR2%"=="!DRIVESTR1!:/" (
SET CONVSTR3=!CONVSTR1:%%A:/=/cygdrive/%%A/!
GOTO :EXITLOOP1
)
)
:EXITLOOP1
ENDLOCAL&SET %~2=%CONVSTR3%
GOTO :EOF
REM #######################################################
REM #
REM # FUNC_LOCASE <%를 제외한 문자열변수>
REM # 함수: 소문자로 변환
REM #
REM #######################################################
:FUNC_LOCASE
REM Subroutine to convert a variable VALUE to all lower case.
REM The argument for this subroutine is the variable NAME.
FOR %%i IN ("A=a" "B=b" "C=c" "D=d" "E=e" "F=f" "G=g" "H=h" "I=i" "J=j" "K=k" "L=l" "M=m" "N=n" "O=o" "P=p" "Q=q" "R=r" "S=s" "T=t" "U=u" "V=v" "W=w" "X=x" "Y=y" "Z=z") DO CALL SET "%1=%%%1:%%~i%%"
GOTO :EOF
REM #######################################################
REM #
REM # FUNC_UPCASE <%를 제외한 문자열변수>
REM # 함수: 대문자로 변환
REM #
REM #######################################################
:FUNC_UPCASE
REM Subroutine to convert a variable VALUE to all UPPER CASE.
REM The argument for this subroutine is the variable NAME.
FOR %%i IN ("a=A" "b=B" "c=C" "d=D" "e=E" "f=F" "g=G" "h=H" "i=I" "j=J" "k=K" "l=L" "m=M" "n=N" "o=O" "p=P" "q=Q" "r=R" "s=S" "t=T" "u=U" "v=V" "w=W" "x=X" "y=Y" "z=Z") DO CALL SET "%1=%%%1:%%~i%%"
GOTO :EOF
@ECHO OFF
REM ########################################################
REM #
REM # 다수의 Portable 앱들을 압축한다.
REM #
REM ########################################################
SET "CURRENT_DIR=%CD%"
FOR /F "TOKENS=*" %%A IN ('DIR /B /ON /AD *.*') DO (
CD /D "%CURRENT_DIR%\%%A"
zip -9 -r "..\%%A.zip" PortableApps
CD /D "%CURRENT_DIR%"
)
#############################
#
# 자주 사용하는 커맨드-1
#
#############################
■ 비밀번호 변경
NET USER Administrator mypass1234
■ 자주 사용하는 커맨드
compmgmt.msc : 컴퓨터 관리
control : 제어판
devmgmt.msc : 장치 관리자
logoff : 로그 오프
netplwiz : 사용자 자동로그인 설정
services.msc : 윈도우 서비스 관리
sysdm.cpl : 시스템 등록정보
systempropertiesadvanced : 시스템 속성
winver : 윈도우 버전 확인
■ 네트워크 드라이브 연결
NET USE * /DELETE /Y
NET USE M: \\10.10.10.1\SHARE /USER:share mypass1234 /PERSISTENT:YES
■ 풀네임 변경
NET USER Administrator /FULLNAME:"John Doe"
#############################
#
# 자주 사용하는 커맨드-2
#
#############################
■기본 애플리케이션
calc : 계산기
chkdsk /f D: : 디스크 검사 도구
cleanmgr : 디스크 정리
cmd : 명령 프롬프트
explorer : 탐색기
iexplore : 인터넷 익스플로러
logoff : 로그오프
moviemk : 윈도우 무비 메이커
mrt : 악성 소프트웨어 제거 도구
msconfig : 시스템 구성 (시작 프로그램 관리자)
msinfo32 시스템 정보
mspaint : 그림판
msra : 윈도우 원격 지원
mstsc : 원격 데스크톱 연결
notepad : 메모장
osk : 화상 키보드
perfmon : 성능 모니터
regedit : 레지스트리 편집기
sfc : 시스템 검색 유틸리티 (시스템 파일 유효성 확인)
sfc /scannow : 즉시 스캔
sfc /scanonce : 다음 부팅 때 한번 실행
sndvol32 볼륨 조절기
snippingtool : 캡처 도구
taskmgr : 작업 관리자
wab : 연락처
wmplayer : 윈도우 미디어 플레이어
write : 워드패드
■제어판
OptionalFeatures.exe : Windows 기능 켜기/끄기
appwiz.cpl : 프로그램 추가/삭제
control : 제어판
control admintools : 관리 도구
control desktop : 개인 설정
control fonts : 폰트 (fonts만 입력하면 폰트 폴더 열림)
control keyboard : 키보드
control mouse : 마우스 속성
control netconnections : 네트워크 연결
control printers : 프린터
control schedtasks : 작업 스케줄러
desk.cpl : 디스플레이
inetcpl.cpl : 인터넷 속성
mmsys.cpl : 소리
ncpa.cpl : 네트워크 연결
powercfg.cpl : 전원 옵션
sysdm.cpl : 시스템 속성
wscui.cpl : 보안 센터
■관리콘솔 커맨드
certmgr.msc : 인증서
ciadv.msc : 인덱싱서비스
compmgmt.msc : 컴퓨터 관리
dcomcnfg : 구성요소 서비스
devmgmt.msc : 장치관리자
dfrg.msc : 디스크 조각모음
diskmgmt.msc : 디스크 관리
eventvwr : 이벤트 뷰어
eventvwr.msc : 이벤트 뷰어
firewall.cpl : 윈도우 방화벽
fsmgmt.msc : 공유 폴더
gpedit.msc : 로컬 컴퓨터 정책
lusrmgr.msc : 로컬 사용자 및 그룹
msconfig : 시스템 구성
msra : 윈도우 원격지원
mstsc : 원격 데스크탑 연결
ncpa.cpl : 네트워크 연결 설정
ntmsmgr.msc : 이동식 저장소
ntmsoprq.msc : 이동식 저장소 운영자 요청
perfmon.msc : 성능모니터뷰
regedit : 레지스트리 에디터
rsop.msc : 정책의 결과와 집합
secpol.msc : 로컬 보안설정
services.msc : 윈도우 서비스 관리
wmimgmt.msc : WMI(Windows Management Infrastructure)
■시스템 재시작
shutdown -f -s -t 10 : 10초 뒤 셧다운
shutdown -f -r -t 0 : 즉시 리부트
#############################
#
# 기본 명령어
#
#############################
ASSOC 파일 확장자 별 연결을 보여주거나 수정합니다.
ATTRIB 파일 속성을 표시하거나 바꿉니다.
BREAK 확장된 CTRL+C 검사를 설정하거나 지웁니다.
BCDEDIT 부팅 로딩을 제어하기 위해 부팅 데이터베이스에서 속성을 설정합니다.
CACLS 파일의 액세스 컨트롤 목록(ACL)을 표시하거나 수정합니다.
CALL 한 일괄 프로그램에서 다른 일괄 프로그램을 호출합니다.
CD 현재 디렉터리 이름을 보여주거나 바꿉니다.
CHCP 활성화된 코드 페이지의 번호를 표시하거나 설정합니다.
CHDIR 현재 디렉터리 이름을 보여주거나 바꿉니다.
CHKDSK 디스크를 검사하고 상태 보고서를 표시합니다.
CHKNTFS 부팅하는 동안 디스크 확인을 화면에 표시하거나 변경합니다.
CLS 화면을 지웁니다.
CMD Windows 명령 인터프리터의 새 인스턴스를 시작합니다.
COLOR 콘솔의 기본색과 배경색을 설정합니다.
COMP 두 개 또는 여러 개의 파일을 비교합니다.
COMPACT NTFS 분할 영역에 있는 파일의 압축을 표시하거나 변경합니다.
CONVERT FAT 볼륨을 NTFS로 변환합니다. 현재 드라이브는 변환할 수 없습니다.
COPY 하나 이상의 파일을 다른 위치로 복사합니다.
CIPHER 파일 암호화 또는 디스크 완전 삭제
DATE 날짜를 보여주거나 설정합니다.
DEL 하나 이상의 파일을 지웁니다.
DIR 디렉터리에 있는 파일과 하위 디렉터리 목록을 보여줍니다.
DISKPART 디스크 파티션 속성을 표시하거나 구성합니다.
DOSKEY 명령줄을 편집하고, Windows 명령을 다시 호출하고, 매크로를 만듭니다.
DRIVERQUERY 현재 장치 드라이버 상태와 속성을 표시합니다.
ECHO 메시지를 표시하거나 ECHO를 켜거나 끕니다.
ENDLOCAL 배치 파일에서 환경 변경의 지역화를 끝냅니다.
ERASE 하나 이상의 파일을 지웁니다.
EXIT CMD.EXE 프로그램(명령 인터프리터)을 종료합니다.
FC 두 파일 또는 파일 집합을 비교하여 다른 점을 표시합니다.
FIND 파일에서 텍스트 문자열을 검색합니다.
FINDSTR 파일에서 문자열을 검색합니다.
FOR 파일 집합의 각 파일에 대해 지정된 명령을 실행합니다.
FORMAT Windows에서 사용할 디스크를 포맷합니다.
FSUTIL 파일 시스템 속성을 표시하거나 구성합니다.
FTYPE 파일 확장명 연결에 사용되는 파일 형식을 표시하거나 수정합니다.
GOTO Windows 명령 인터프리터가 일괄 프로그램에서 이름표가 붙여진 줄로 이동합니다.
GPRESULT 컴퓨터 또는 사용자에 대한 그룹 정책 정보를 표시합니다.
GRAFTABL 윈도우즈가 그래픽 모드에서 확장 문자 세트를 표시할 수 있게 합니다.
HELP 윈도우즈 명령에 대한 도움말 정보를 제공합니다.
ICACLS 파일과 디렉터리에 대한 ACL을 표시, 수정, 백업 또는 복원합니다.
IF 일괄 프로그램에서 조건 처리를 수행합니다.
LABEL 디스크의 볼륨 이름을 만들거나, 바꾸거나, 지웁니다.
MD 디렉터리를 만듭니다.
MKDIR 디렉터리를 만듭니다.
MKLINK 바로 가기 링크와 하드 링크를 만듭니다.
MODE 시스템 장치를 구성합니다.
MORE 출력을 한번에 한 화면씩 표시합니다.
MOVE 하나 이상의 파일을 한 디렉터리에서 다른 디렉터리로 이동합니다.
OPENFILES 파일 공유에서 원격 사용자에 의해 열린 파일을 표시합니다.
PATH 실행 파일의 찾기 경로를 표시하거나 설정합니다.
PAUSE 배치 파일의 처리를 일시 중단하고 메시지를 표시합니다.
POPD PUSHD에 의해 저장된 현재 디렉터리의 이전 값을 복원합니다.
PRINT 텍스트 파일을 인쇄합니다.
PROMPT 윈도우즈 명령 프롬프트를 변경합니다.
PUSHD 현재 디렉터리를 저장한 다음 변경합니다.
RD 디렉터리를 제거합니다.
RECOVER 불량이거나 결함이 있는 디스크에서 읽을 수 있는 정보를 복구합니다.
REM 배치 파일 또는 CONFIG.SYS에 주석을 기록합니다.
REN 파일 이름을 바꿉니다.
RENAME 파일 이름을 바꿉니다.
REPLACE 파일을 바꿉니다.
RMDIR 디렉터리를 제거합니다.
ROBOCOPY 파일과 디렉터리 트리를 복사할 수 있는 고급 유틸리티입니다.
SET 윈도우즈 환경 변수를 표시, 설정 또는 제거합니다.
SETLOCAL 배치 파일에서 환경 변경의 지역화를 시작합니다.
SC 서비스(백그라운드 프로세스)를 표시하거나 구성합니다.
SCHTASKS 컴퓨터에서 실행할 명령과 프로그램을 예약합니다.
SHIFT 배치 파일에서 바꿀 수 있는 매개 변수의 위치를 바꿉니다.
SHUTDOWN 컴퓨터의 로컬 또는 원격 종료를 허용합니다.
SORT 입력을 정렬합니다.
START 지정한 프로그램이나 명령을 실행할 별도의 창을 시작합니다.
SUBST 경로를 드라이브 문자에 연결합니다.
SYSTEMINFO 컴퓨터별 속성과 구성을 표시합니다.
TASKLIST 서비스를 포함하여 현재 실행 중인 모든 작업을 표시합니다.
TASKKILL 실행 중인 프로세스나 응용 프로그램을 중단합니다.
TIME 시스템 시간을 표시하거나 설정합니다.
TITLE CMD.EXE 세션에 대한 창 제목을 설정합니다.
TREE 드라이브 또는 경로의 디렉터리 구조를 그래픽으로 표시합니다.
TYPE 텍스트 파일의 내용을 표시합니다.
VER 윈도우즈 버전을 표시합니다.
VERIFY 파일이 디스크에 올바로 기록되었는지 검증할지 여부를 지정합니다.
VOL 디스크 볼륨 레이블과 일련 번호를 표시합니다.
XCOPY 파일과 디렉터리 트리를 복사합니다.
WMIC 대화형 명령 셸 내의 WMI 정보를 표시합니다
#############################
#
# List of any Windows MMC files
#
#############################
azman.msc Authorization Manager
certlm.msc Certificates Local Computer
certmgr.msc Certificates
comexp.msc Component Services
compmgmt.msc Computer Management
devmgmt.msc Device Manager
devmoderunasuserconfig.msc User Manager
diskmgmt.msc Disk Management
eventvwr.msc Event Viewer
fsmgmt.msc Shared Folders
gpedit.msc Group Policy Editor
lusrmgr.msc Local Users and Groups
perfmon.msc Performance Monitor
printmanagement.msc Print Management
rsop.msc Resultant Set of Policies
secpol.msc Local Security Policy
services.msc Services Manager
taskschd.msc Task Scheduler
tpm.msc Trusted Platform Module Management
wf.msc Windows Firewall
wmimgmt.msc WMI Management
#############################
#
# List of Windows Server MMC Files
#
#############################
adfs.msc Active Directory Federation Services
AdRmsAdmin.msc Active Directory Rights Management Services
adsiedit.msc ADSI Edit
certim.msc Local Computer Certificates
certsrv.msc Certification Authority
certtmpl.msc Certification Templates
ciadv.msc Indexing Service
cluadmin.msc Failover Cluster Manager
da6to4.msc Network Interfaces Performance Monitor
daihttps.msc HTTPS Traffic Performance Monitor
daipsecdos.msc IPSec Performance Monitor
daisatapmsc ISATAP Performance Monitor
dfsmgmt.msc DFS Management
dhcpmgmt.msc DHCP Management
dnsmgmt.msc DNS Manager
domain.msc Active Directory Domains and Trust
dsa.msc Active Directory Users and Computers.
dssite.msc Active Directory Sites and Services
fsrm.msc File Server Resource Manager
fxsadmin.msc Microsoft Fax Service Manager
gpmc.msc Group Policy Management
gpme.msc Group Policy Mangement Editor
gptedit.msc Group Policy Starter GPO Editor
hcscfg.msc Health Registration Authority
idmumgmt.msc Microsoft Identity Management for Unix
iis.msc Internet Information Services Manager
iis6.msc Internet Information Services Manager 6.0
lsdiag.msc RD Licensing Diagnoser
napclcfg.msc NAP Client Configuration
mfsmgmt.msc Services for Network File System
nps.msc Network Policy Server
ocsp.msc Online Responder
pkiview.msc Enterprise PKI
remoteprograms.msc RemoteApp Manager
rrasmgmt.msc Routing and Remote Access
sanmmc.msc Storage Manager for SANs
sbmgr.msc Remote Desktop Connection Manager
scanmanagement.msc Scan Management
servermanager.msc Server Manager
storagemgmt.msc Share and Storage Management
storexpl.msc Storage Explorer
tapimgmt.msc Telephony
tsadmin.msc Remote Desktop Services Manager
tsconfig.msc Remote Desktop Session Host Configuration
tsgateway.msc RD Gateway Manager
tsmmc.msc Remote Desktops
virtmgmt.msc Hyper-V Manager
wbadmin.msc Windows Server Backup
Wdsmgmt-msc Windows Deployment Services
winsmgmt.msc WINS
wbiadmin.msc Windows Server Backup
wsrm.msc Windows System Resource Manager
wsus.msc Update Services