댓글 쓰기 권한이 없습니다. 로그인 하시겠습니까?
일반
2012.09.19 17:39
DOSKEY 명령어 사용법
조회 수 17147 댓글 0
이 명령어는 DOSKEY 프로그램을 메모리에 탑재하기 위하여 사용하는 것으로 이미 사용되었던 도스 명령어를 재호출하거나 재호출된 명령어를 편집할
수 있고, 매크로를 만들 수 있다.
따라서, DOSKEY의 매크로 작성 기능을 이용하면 사용자의 용도에 맞게 작업을 자동화 할 수 있다. DOSKEY 프로그램은 메모리 상주 프로그램으로 일단 메모리에 탑재되면 항상 메모리에 상주하는데, 한번 설치되는데 약 3KB 정도의 메모리가 사용된다. 그러나, 일단 메모리에 상주한 뒤에는 다시 DOSKEY 명령어를 사용하여도 메모리 공간을 더 차지하는 것은 아니다. 이것은 매크로를 정의하기 위하여 DOSKEY 명령어를 자주 사용할 필요가 있는 경우가 자주 발생하기 때문이다. 예를 들어, 10개의 매크로를 정의하기 위해서는 10번의 DOSKEY 명령어를 사용하는데, 매번 DOSKEY가 메모리에 상주하는 것이 아니라 두 번째부터 사용되는 경우에는 필요한 매크로 정의만 수용하는 것이다. ■ 명령어 위치 윈도우가 설치되어 있는 하드디스크(C:\Windows\Command)에 실행 파일 형태로 존재하는 외부 명령어 ■ 사용법 DOSKEY [/BUFSIZE=size] [/ECHO:on|off] [/FILE:filename] [/HISTORY] [/INSERT|/OVERSTRIKE] [/KEYSIZE:size] [/LINE:size] [/MACROS] [/REINSTALL] [macroname=[command]] ■ 옵션 및 매개변수
■ 참고 사항 ☞ 이미 사용했던 명령어를 재호출하기 이미 사용한 적이 있는 명령어를 재호출하려면 DOSKEY를 메모리에 탑재한 후 다음 키들을 사용할 수 있다.
☞ 명령어 라인 편집하기 DOSKEY 프로그램을 이용하여 현행 명령어 라인을 편집할 수 있다. 이처럼 명령어 라인을 편집할 수 있게 됨으로써 동일하거나 비슷한 내용의 명령어를 키보드로부터 처음부터 재입력할 필요가 없다. 다음은 DOSKEY에서 명령어를 편집할 때 사용할 수 있는 편집 키와 그 기능에 대한 설명이다.
☞ 명령어 라인 편집시 삽입 모드 지정하기 사용자가 화면에 나타난 명령어를 편집하는 경우 <Insert> 키를 누르면 기존의 명령어를 덮어쓰지 않고 삽입된다. 그러나 이 경우 일단 하나의 명령어가 실행된 후에는 다시 수정 모드로 돌아간다. 삽입 모드에서 명령어를 편집하고자 하려면 매번 <Insert> 키를 눌러 주어야 한다. 이러한 불편함을 덜기 위하여 제공되는 옵션이 /insert 옵션이다. /insert 옵션을 지정하는 경우 사용자가 <Enter>를 눌러 명령어를 실행할 때마다 키보드를 삽입 모드로 변환시킨다. 만약, 삽입 모드에서 수정 모드로 변환하려면 /overstrike 옵션을 사용하여 DOSKEY를 재설치한다. 일시적으로 수정 모드로 변환하려면 <Insert> 키를 누른다. DOSKEY는 삽입 모드와 수정 모드를 구분하기 위하여 입력 모드에 따라 커서의 모양을 바뀐다. ☞ 매크로 만들기 사용자는 하나나 그 이상의 프롬프트 명령어를 실행하는 매크로를 만들기 위하여 DOSKEY 명령어를 사용할 수 있다. 매크로를 만들기 위하여 배치 프로그램 내에서도 DOSKEY 명령어를 사용할 수 있다. 사용자는 매크로를 정의할 때 매크로 명령어 구동을 위하여 다음과 같은 특별한 문자를 사용할 수 있다.
다음의 매크로 이름 뒤에 사용자가 입력한 명령어 라인 상의 모든 옵션이나 정보가 매크로 내에서 $*로 대체된다. 예를 들어, 5.25인치 2D 디스크의 빠른 포맷을 수행하는 매크로를 만들고자 한다면 다음과 같이 명령어를 입력한다. doskey qf=format $1 /q/4 위의 예에서 /q/4 옵션은 $*로 대표된다. ☞ 매크로 실행하기 매크로를 실행하기 위하여 명령어 라인 상의 첫 번째 자리에 시작하는 매크로 이름을 입력한다. 만약 매크로가 $* 혹은 $1부터 $9 사이의 배치 매개변수 중에서 둘 이상의 매개변수가 연속적으로 정의되어 있다면 매개변수를 분리하기 위해 스페이스를 사용한다. 위의 예에서 지정한 'doskey qf=format $1 /q/4' 매크로를 A드라이브를 포맷하기 위하여 다음과 같이 입력함으로써 매크로를 실행할 수 있다. qf a: 매크로의 정의는 배치 프로그램 내에서 실행할 수는 있지만, 매크로의 실행은 배치 프로그램 내에서 실행할 수 없다. ☞ 도스 명령어와 같은 이름을 가진 매크로 만들기 도스의 실행 가능한 프로그램의 이름과 같은 매크로를 만들 수 있다. 즉, 디스크를 포맷하는 프로그램의 이름은 FORMAT.EXE인데 format이라는 이름을 가진 매크로를 만들 수 있는 것이다. 이처럼 동일한 이름으로 매크로를 만드는 것은 프로그램을 실행할 때마다 동일한 옵션을 지정하고자 하는 경우에 사용된다. 이처럼 동일한 이름을 가진 매크로를 정의할 수 있지만, 도스 명령어 라인에서 입력하는 방식에 따라 매크로가 실행될 수 있고 명령어가 실행될 수 있다. 즉, 매크로를 실행할 때 스페이스의 여부에 따라 매크로가 실행될 수 있고, 명령어가 직접 실행될 수 있다. 매크로를 실행하려면, 프롬프트 다음에 스페이스를 두지 않고 직접 매크로 이름을 입력한다. 만약, 도스 명령어를 실행하려면 명령어 프롬프트 다음에 하나 이상의 스페이스를 삽입한 후에 명령어를 입력한다. 다음의 예는 동일한 이름을 가진 명령어와 매크로를 실행하는 방법이다. 단, 매크로는 'doskey dir=dir $1 /s/b/o:en'으로 지정되어 있다고 가정하고, 현행 드라이브는 C드라이브의 루트 디렉토리라고 가정한다. 매크로의 실행 C:\>dir *.* 명령어의 실행 C:\> dir *.* ☞ 매크로 삭제하기 이미 지정되어 있는 매크로를 삭제할 수 있다. 매크로를 삭제하려면 다음과 같이 DOSKEY 명령어를 입력한다. 단, 삭제하고자 하는 매크로 이름은 abcde라고 가정한다. doskey abcde= ■ 사용 예 /macros(혹은 /m) 옵션과 /history(혹은 /h) 옵션은 매크로와 명령어를 저장하기 위한 배치 프로그램을 만드는데 유용한 옵션이다. 만약, 모든 매크로를 포함한 DOSKEY 명령어를 MAKEINIT.BAT라는 배치 프로그램을 만들고자 한다면 다음과 같이 DOSKEY 명령어를 사용할 수 있다. doskey /m > makeinit.bat 위의 예에서 만들어진 MAKEINIT.BAT 파일을 사용하기 위해서는 각 매크로 라인의 처음에 DOSKEY 명령어를 포함하도록 편집한다. 최근에 사용된 명령어를 포함하는 TMP.BAT라는 배치 프로그램을 만들고자 한다면 다음과 같이 DOSKEY 명령어를 사용한다. doskey /h > tmp.bat 매크로를 정의하는데 있어 여러 개의 명령어로 이루어진 매크로를 정의하려면 각각의 명령어 사이를 $t를 이용하여 분리한다. 다음의 예는 현행 디렉토리를 사용자가 지정한 디렉토리로 변경하고, 해당 디렉토리에 있는 TXT 확장자를 갖는 파일 중에서 읽기 전용 속성을 가진 파일만 사용자가 지정하는 드라이브의 디렉토리로 복사하라는 명령어를 조합하여 TX라는 매크로를 정의한 것이다. doskey tx=cd $1 $t copy *.txt $2 /a:r 위의 예에서 $1과 $2는 사용자가 TX 매크로를 실행할 때 지정한 원본 디렉토리와 목적지 디렉토리를 의미하고, $t는 CD와 COPY 명령어를 분리하기 위한 분리 문자이다. /a:r은 읽기 전용 속성을 가진 파일만 복사하라는 옵션으로 DOSKEY 매크로에서 $*에 해당한다. 이렇게 만들어진 매크로는 사용자가 다음과 같은 형식으로 TX 매크로를 실행할 수 있다. tx c:\edit\data a: 위의 명령어는 C:\EDIT\DATA 디렉토리에 있는 TXT 확장자를 갖는 파일 중에서 읽기 전용 속성을 가진 파일만 A드라이브로 복사하라는 것이다. 다음 매크로는 사용자가 지정한 새로운 서브디렉토리를 만들고 새로 만든 디렉토리를 현행 디렉토리로 변경하라는 MC라는 매크로를 정의한 것이다. doskey mc=md $1 $t cd $1 위의 예에서 SPECIAL이라는 서브디렉토리를 만들어서 그 디렉토리로 변경하려면 다음과 같이 사용할 수 있다. mc special 파일이나 일련의 파일을 이동하기 위하여 배치 매개변수를 사용하는 매크로를 만들 수도 있다. 즉, 파일의 이동은 일단 파일을 목적지 드라이브나 디렉토리로 복사한 다음, 원본 드라이브나 디렉토리에서 복사한 파일을 삭제하는 것이므로, 다음과 같이 MV 매크로를 정의할 수 있다. doskey mv=copy $1 $2 $t del $1 위의 예에서 $1은 원본 드라이브나 디렉토리를 의미하고, $2는 목적지 드라이브나 디렉토리를 의미한다. DIR 명령어를 이용하여 파일 목록을 화면에 디스플레이하는 대신에 사용자가 지정한 파일로 출력하려면 다음과 같이 $g를 이용하여 매크로를 정의할 수 있다. doskey dirtxt=dir $1 $g $2 위의 DIRTXT 매크로를 이용하여 현행 디렉토리 상에 있는 EXE 확장자를 갖는 모든 파일을 DIREXE.TXT 파일로 보내고자 하는 경우에는 다음과 같이 DIRTXT 매크로를 사용한다. dirtxt *.exe direxe.txt 위의 DIRTXT 매크로에서 이미 파일로 존재하고 있는 경우에는 기존 파일의 내용을 모두 지우고 새로운 내용만 기록한다. 만약, 기존에 파일이 있는 경우에는 파일의 뒤에 목록을 추가하기 위하여 $g 대신에 $g$g의 이중 문자를 사용한다. Dreamy의 코드 스크랩내가 모으고 내가 보는
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Designed by sketchbooks.co.kr / sketchbook5 board skin
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5