본문 바로가기
운영체제

[Windows 명령프롬프트] 배치파일 구성해보기

by lhs9842 2014. 7. 27.
반응형





안녕하세요. 다주택자입니다.
이번에 참 오랫만에 글을 쓰는거 같네요.(확인해보니 최근이 3.29일 ㅎㄷㄷ) 뭐 변명이라고 할 수도 있지만 제가 지금 인문계 고등학교에 들어간 상황이라 학기중에 글 쓰기는 쉽지 않을거 같습니다.(지금은 시험기간 막 끝난 주말이라 좀 시간이 나네요. 지금 보면 이서현님은 고3이신데 잘만 쓰시는데 저는 왜 이런지....)
저런 이야기 잠시 접어놓고 이제 본격적으로 강의를 써보도록 하겠습니다.
이번 글에서는 Microsoft사의 Windows의 배치파일을 만드는 방법을 알려드리고자 합니다. 이번 글이 상당히 길걸로 예상됩니다.[각주:1]
일단 짜야되니까 프로그램이 필요하죠? 그런데 배치파일을 짜는 프로그램은 Windows에 기본적으로 내장되어 있습니다. 바로 메모장인데요. 시작-모든 프로그램-보조프로그램-메모장에 접근해서 메모장을 킵니다.(아니면 그냥 txt 편집하는 프로그램 아무거나 괜찮습니다. 단 저장시에 확장자를 지정할 수 있어야 합니다.)
기본적인 언어는 돌아가는 프로그램마다 다릅니다. 필자가 사용중인 Windows xp(...)[각주:2]의 기본 제공 구문과 역할[각주:3]은 다음과 같습니다.
ASSOC    파일 확장명 연결을 보여주거나 수정합니다.
AT       명령어와 프로그램의 실행을 스케줄합니다.
ATTRIB   파일 속성을 표시하거나 바꿉니다.
BREAK    확장된 CTRL+C 검사를 설정하거나 지웁니다.
CACLS    파일의 액세스 컨트롤 목록(ACL)을 표시하거나 수정합니다.
CALL     한 일괄 프로그램에서 다른 일괄 프로그램을 호출합니다.
CD       현재 디렉터리 이름을 보여주거나 바꿉니다.
CHCP     활성화된 코드 페이지의 번호를 표시하거나 설정합니다.
CHDIR    현재 디렉터리 이름을 보여주거나 바꿉니다.
CHKDSK   디스크를 검사하고 상태 보고서를 표시합니다.
CHKNTFS  부팅하는 동안 디스크 확인을 화면에 표시하거나 변경합니다.
CLS      화면을 지웁니다.
CMD      Windows 명령 인터프리터의 새 인스턴스를 시작합니다.
COLOR    콘솔의 기본색과 배경색을 설정합니다.
COMP     두 개 또는 여러 개의 파일을 비교합니다.
COMPACT  NTFS 분할 영역에 있는 파일의 압축을 표시하거나 변경합니다.
CONVERT  FAT 볼륨을 NTFS로 변환합니다. 현재 드라이브는 변환할 수 없습니다.
COPY     하나 이상의 파일을 다른 위치로 복사합니다.
DATE     날짜를 보여주거나 설정합니다.
DEL      하나 이상의 파일을 지웁니다.
DIR      디렉터리에 있는 파일과 하위 디렉터리 목록을 보여줍니다.
DISKCOMP 두 플로피 디스크의 내용을 비교합니다.
DISKCOPY 플로피 디스크의 내용을 다른 플로피 디스크로 복사합니다.
DOSKEY   명령줄을 편집하고, Windows 명령을 다시 호출하고, 매크로를 만듭니다.
ECHO     메시지를 보여주거나, 명령어 반향을 켜거나 끕니다.
ENDLOCAL 일괄 파일에서 환경 변경의 지역화를 끝냅니다.
ERASE    하나 이상의 파일을 지웁니다.
EXIT     CMD.EXE 프로그램(명령 인터프리터)을 마칩니다.
FC       두 파일 또는 파일의 집합을 비교하여 다른 점을 표시합니다.
FIND     파일에서 텍스트 문자열을 찾습니다.
FINDSTR  파일에서 문자열을 찾습니다.
FOR      파일 집합에서 각 파일에 대해 지정된 명령을 실행합니다.
FORMAT   Windows에서 사용할 디스크를 포맷합니다.
FTYPE    파일 확장 연결에 사용되는 파일 형식을 표시하거나 수정합니다.
GOTO     Windows 명령 인터프리터가 일괄 프로그램에서 이름표가 붙여진 줄로 가게 합니다.
GRAFTABL Windows가 그래픽 모드에서 확장 문자 세트를 표시할 수 있게 합니다.
HELP     Windows 명령어에 관한 도움말을 제공합니다.
IF       일괄 프로그램에서 조건 처리를 수행합니다.
LABEL    디스크의 볼륨 이름을 만들거나, 바꾸거나, 지웁니다.
MD       디렉터리를 만듭니다.
MKDIR    디렉터리를 만듭니다.
MODE     시스템 장치를 구성합니다.
MORE     출력을 한번에 한 화면씩 표시합니다.
MOVE     하나 이상의 파일을 한 디렉터리에서 다른 디렉터리로 옮깁니다.
PATH     실행 파일의 찾기 경로를 보여주거나 설정합니다.
PAUSE    일괄 파일의 처리를 보류하고 메시지를 보여줍니다.
POPD     PUSHD 명령으로 저장된 디렉터리로 바꿉니다.
PRINT    텍스트 파일을 인쇄합니다.
PROMPT   Windows 명령 프롬프트를 바꿉니다.
PUSHD    현재 디렉터리를 저장한 후 디렉터리를 바꿉니다.
RD       디렉터리를 지웁니다.
RECOVER  불량이거나 결함이 있는 디스크에서 읽을 수 있는 정보를 복구합니다.
REM      일괄 파일 또는 CONFIG.SYS에서 주석을 기록합니다.
REN      파일 이름을 바꿉니다.
RENAME   파일 이름을 바꿉니다.
REPLACE  파일을 대체합니다.
RMDIR    디렉터리를 지웁니다.
SET      Windows 환경 변수를 보여주거나, 설정하거나, 지웁니다.
SETLOCAL 일괄 파일에서 환경 변경의 지역화를 시작합니다.
SHIFT    일괄 파일에서 바꿀 수 있는 매개 변수의 위치를 바꿉니다.
SORT     입력을 정렬합니다.
START    지정된 프로그램이나 명령을 별도의 창에서 시작합니다.
SUBST    경로를 드라이브 문자로 지정합니다.
TIME     시스템 시간을 보여주거나 설정합니다.
TITLE    CMD.EXE 세션에 대한 창의 창 제목을 설정합니다.
TREE     드라이브 또는 경로의 디렉터리 구조를 그래픽으로 화면에 표시합니다.
TYPE     텍스트 파일의 내용을 보여줍니다.
VER      Windows 버전을 보여줍니다.
VERIFY   파일이 디스크에 올바로 쓰였는지 검증할지 여부를 지정합니다.
VOL      디스크 볼륨 이름과 일련 번호를 보여줍니다.
XCOPY    파일과 디렉터리 트리를 복사합니다.
여기 까지가 명령프롬프트 자체의 제공 언어입니다.
이 외에도 C:\Windows\System32 안에 있는 exe 파일들은 배치파일 위치와 관련이 없습니다. 제가 거기서 가장 많이 쓰는 것은 diskpart인데요. 여기까지는 하려면 좀 많으니 나중에 시간이 나면 한번 수정을 하든 추가적으로 글을 쓰든 해서 알려드리겠습니다.
그리고 배치파일 경로내에 있는 경우에는 그 경로내의 있는 프로그램을 바로 실행 할 수 있습니다. 그냥 바로 이름 치면 됩니다. 프로그램 파일 이름이요. 물론 스위치(명령 뒤에 '-'으로 시작하는 옵션)이나 실행 변수도 설정 가능하죠.

그리고 그게 아니더라도 특정 경로로 지정한다면 그 경로로 지정한다면 그것도 가능합니다. 예를 들어 "C:\Users\All Users\바탕 화면\aa.exe" 이런식으로요

그리고 주의하실점은 파일이름이나 경로에 띄어쓰기가 추가되어 있다면 그 경로와 파일이름 전체를 ""으로 묶어야 한다는 점입니다.

묶지 않으면 명령 프롬프트가 그 띄어쓰기를 옵션으로 인식하기 때문에 정상적으로 실행되지 않습니다. "C:\Users\All Users\바탕 화면\aa.exe"으로 예를 들면 이 상태라면 aa.exe가 실행되지만 ""를 생략하면 'C:\Users\All'파일을 옵션으로 'Users\바탕'과 '화면\aa.exe'으로 놓은 것으로 인식하기 때문입니다. 이것은 그냥 cmd로 치는 것도 동일합니다. (애초에 배치 파일은 cmd에 이렇게 진행하라고 짜놓은 스크립트에 불과하기 떄문입니다. 실제로 cmd에 title test라고 치면 창 이름이 test로 바뀝니다. 물론 if 구문 같은 것을 직접 입력해서 하는건 무리이기 떄문에 배치 파일이 유용한것이고요)

기본적으로 아실 것은 이 정도면 될거 같습니다.

그럼 이 것으로 글을 마치겠습니다.


아래의 손가락버튼을 눌러주시면 블로그에 매우 큰 도움이됩니다. 히히




Copyright © 이동마이의 컴퓨터 하루&다주택자(lhs9842) All Rights Reserved.



  1. 사실 처음에는 이걸 또 여러글로 나눌까 하다가 저번에 안드로이드편 꼴 날까봐 무서워서....(뭐 지금 제 상황봐서는 그럴 확률 매우 높아요) [본문으로]
  2. 저도 바꾸고 싶은데 부모님이......... [본문으로]
  3. 기본 제공의 경우 배치파일의 경로와 관련 없이 사용가능한 부분입니다. [본문으로]
반응형
크리에이티브 커먼즈 라이선스
lhs9842 필자가 게시한 대부분의 블로그 게시물은 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 4.0 국제 라이선스에 따라 이용할 수 있습니다. 게시물에 CCL이 적용되지 아니하다고 적혀있는 경우엔 본 라이선스 적용 대상이 아닙니다.

댓글