.BAT 파일이란?
BAT 파일은 cmd.exe에서 DOS 및 모든 Windows 버전과 함께 실행되는 배치 파일로 알려져 있습니다. 이는 Windows 내에서 유지 관리 유틸리티를 실행하거나 일반 프로그램을 시작하는 것과 같은 다양한 작업을 수행하기 위해 명령줄 인터프리터에 의해 실행되는 일반 텍스트로 된 일련의 줄 명령으로 구성됩니다. 배치 파일에는 인터프리터가 대화식으로 수락할 수 있는 모든 명령이 포함될 수 있으며 배치 파일 내에 작성된 조건부 분기 및 반복을 가능하게 하는 코드 구조를 사용할 수 있습니다.
.BAT 파일 형식
BAT 파일 형식은 본질적으로 반복되는 명령 시퀀스를 자동화하기 위해 통합된 스크립트입니다. “일괄 처리"라는 용어는 일괄 처리에 사용되며 “비대화형 실행"으로 간주할 수 있습니다. 따라서 배치 파일은 여러 데이터의 배치를 처리하지 못할 수 있습니다. 이전 DOS(디스크 운영 체제)에서 배치 파일은 파일 이름과 확장자 .bat를 입력하여 명령줄 인터페이스에서 실행되었습니다. Microsoft Windows와 같은 초기 Microsoft 그래픽 인터페이스 기반 운영 체제는 DOS에 의존했습니다. 사용자는 Windows 복구, 최적화 또는 재설치와 같은 일반적인 작업을 수행하기 위해 DOS를 사용해야 했습니다. 나중에 Microsoft는 DOS 운영 체제에 의존하지 않는 Windows NT를 도입했습니다. 따라서 현대 Microsoft 운영 체제에서는 명령 프롬프트 또는 cmd.exe를 사용하여 배치 파일을 실행할 수 있습니다.
배치 파일 매개변수
명령 프롬프트는 배치 작업의 이름과 경로 및 배치 작업 내에서 9개의 호출 매개변수를 참조하기 위해 %0, %1 ~ %9와 같은 여러 특수 변수를 지원합니다. 존재하지 않는 매개변수는 길이가 0인 문자열로 대체됩니다. 그러나 환경 변수와 유사하게 사용할 수 있지만 환경에 저장되지는 않습니다. Microsoft와 IBM은 이러한 변수를 대체 매개변수라고 하고 Novell, Digital Research 및 Caldera는 대체 변수라는 용어를 도입했습니다.
다음은 유용한 배치 파일 명령입니다.
명령 | 설명 |
---|---|
버 | 이 배치 명령은 사용 중인 MS-DOS 버전을 보여줍니다. |
협회 | 확장자를 파일 형식(FTYPE)과 연결하거나 기존 연결을 표시하거나 연결을 삭제하는 일괄 처리 명령입니다. |
CD | 이 배치 명령은 다른 디렉토리를 변경하거나 현재 디렉토리를 표시하는 데 도움이 됩니다. |
CLS | 이 일괄 명령은 화면을 지웁니다. |
복사 | 이 배치 명령은 한 위치에서 다른 위치로 파일을 복사하는 데 사용됩니다. |
델 | 이 배치 명령은 디렉토리가 아닌 파일을 삭제합니다. |
디렉토리 | 이 배치 명령은 디렉토리의 내용을 나열합니다. |
날짜 | 이 배치 명령은 시스템 날짜를 찾는 데 도움이 됩니다. |
에코 | 이 배치 명령은 메시지를 표시하거나 명령 반향을 켜거나 끕니다. |
종료 | 이 배치 명령은 DOS 콘솔을 종료합니다. |
MD | 이 배치 명령은 현재 위치에 새 디렉터리를 만듭니다. |
이동 | 이 배치 명령은 디렉토리 간에 파일 또는 디렉토리를 이동합니다. |
경로 | 이 배치 명령은 경로 변수를 표시하거나 설정합니다. |
일시중지 | 이 배치 명령은 사용자에게 프롬프트를 표시하고 입력 줄이 입력될 때까지 기다립니다. |
프롬프트 | 이 배치 명령을 사용하여 cmd.exe 프롬프트를 변경하거나 재설정할 수 있습니다. |
RD | 이 일괄 처리 명령은 디렉터리를 제거하지만 디렉터리를 제거하려면 먼저 디렉터리를 비워야 합니다. |
렌 | 파일 및 디렉토리 이름 변경 |
렘 | 이 배치 명령은 배치 파일의 주석에 사용되어 주석의 내용이 실행되지 않도록 합니다. |
시작 | 이 배치 명령은 새 창에서 프로그램을 시작하거나 문서를 엽니다. |
시간 | 이 배치 명령은 시간을 설정하거나 표시합니다. |
유형 | 이 배치 명령은 파일의 내용을 출력에 인쇄합니다. |
볼 | 이 배치 명령은 볼륨 레이블을 표시합니다. |
ATTRIB | curret 디렉토리에 있는 파일의 속성을 표시하거나 설정합니다. |
CHKDSK | 이 배치 명령은 디스크에 문제가 있는지 확인합니다. |
선택 | 이 배치 명령은 사용자에게 옵션 목록을 제공합니다. |
CMD | 이 배치 명령은 명령 프롬프트의 다른 인스턴스를 호출합니다. |
COMP | 이 배치 명령은 파일 크기를 기준으로 2개의 파일을 비교합니다. |
변환 | 이 배치 명령은 볼륨을 FAT16 또는 FAT32 파일 시스템에서 NTFS 파일 시스템으로 변환합니다. |
드라이버 쿼리 | 이 배치 명령은 설치된 모든 장치 드라이버와 해당 속성을 표시합니다. |
확장 | 이 배치 명령은 압축된 .cab 캐비닛 파일에서 파일을 추출합니다. |
찾기 | 이 배치 명령은 파일 또는 입력에서 문자열을 검색하여 일치하는 행을 출력합니다. |
포맷 | 이 배치 명령은 FAT, FAT32 또는 NTFS와 같은 Windows 지원 파일 시스템을 사용하도록 디스크를 포맷하여 디스크의 이전 내용을 덮어씁니다. |
도움 | 이 배치 명령은 Windows에서 제공하는 명령 목록을 표시합니다. |
IPCONFIG | 이 배치 명령은 Windows IP 구성을 표시합니다. 연결별 구성 및 해당 연결 이름을 표시합니다. |
라벨 | 이 배치 명령은 디스크 레이블을 추가, 설정 또는 제거합니다. |
더 | 이 배치 명령은 파일의 내용을 한 번에 한 화면씩 표시합니다. |
넷 | 사용하는 명령어에 따라 다양한 네트워크 서비스를 제공합니다. |
핑 | 이 배치 명령은 네트워크를 통해 지정된 주소로 ICMP/IP “에코” 패킷을 보냅니다. |
셧다운 | 이 배치 명령은 컴퓨터를 종료하거나 현재 사용자를 로그오프합니다. |
정렬 | 이 배치 명령은 소스 파일의 입력을 받아 A에서 Z 또는 Z에서 A로 알파벳순으로 내용을 정렬합니다. 콘솔에 출력을 인쇄합니다. |
SUBST | 이 배치 명령은 드라이브 문자를 로컬 폴더에 할당하거나 현재 할당을 표시하거나 할당을 제거합니다. |
시스템 정보 | 이 배치 명령은 컴퓨터 및 해당 운영 체제의 구성을 보여줍니다. |
태스크킬 | 이 배치 명령은 하나 이상의 작업을 종료합니다. |
작업 목록 | 이 배치 명령은 작업 이름 및 PID(프로세스 ID)를 포함한 작업을 나열합니다. |
엑스카피 | 이 배치 명령은 파일과 디렉토리를 고급 방식으로 복사합니다. |
나무 | 이 배치 명령은 현재 디렉토리의 모든 하위 디렉토리 트리를 모든 수준의 재귀 또는 깊이로 표시합니다. |
FC | 이 배치 명령은 두 파일 간의 실제 차이점을 나열합니다. |
DISKPART | 이 배치 명령은 디스크 파티션의 속성을 표시하고 구성합니다. |
TITLE | 이 일괄 명령은 콘솔 창에 표시되는 제목을 설정합니다. |
설정 | 현재 시스템의 환경 변수 목록을 표시합니다. |
BAT 파일 예
배치 스크립트는 일반적으로 간단한 텍스트 파일로 저장됩니다. 순서대로 실행되는 명령을 포함합니다. 이러한 파일은 .bat 확장자로 저장됩니다. Command Interpreter 소프트웨어를 사용하여 인식하고 실행합니다. 이 소프트웨어는 기본적으로 cmd.exe라는 이름으로 Microsoft Windows에서 사용할 수 있습니다.
다음은 현재 디렉토리의 모든 파일을 삭제하는 샘플 배치 스크립트입니다.
:: Deletes All files in the Current Directory With Prompts and Warnings
::(Hidden, System, and Read-Only Files are Not Affected)
:: @ECHO OFF
DEL . DR