Friday, March 28, 2008
BAT 배치파일에서 인수받는법, 옵션 파라미터 받기; Parameter
배치파일에서 실행시에 인수를 받으려면, %1 이런 식의 특수한 환경변수를 사용하면 됩니다. 퍼센트 기호 + "1에서 9"까지의 숫자입니다.
예를 들어, 배치를 실행할 때 준 1번째 인수는 %1 이라는 변수에 들어가 있고, 2번째 인수는 %2 라는 변수에 자동으로 들어가 있습니다. %9 까지 있을 수 있습니다. 따라서 그 변수를 배치파일 속에 그대로 기입해 주면 됩니다. 별도의 루틴을 작성한다든지 할 필요는 없고 간단합니다.
다음 예제를 실행해 보면 쉽게 알 수 있습니다. 첫번째 인수와, 두번째 인수를 화면에 출력하고, %* 이것은 모든 인수를 의미합니다. 그래서 입력받은 모든 인수들을 개수에 상관없이 모두 한꺼번에 하나의 문자열로 출력합니다.
예제 배치파일 파일명: example.bat
도스창(윈도우에서의 정식명칭은 '명령 프롬프트')에서 example.bat 을 실행시킬 때, 뒤에 AAA BBB CCC 이런 3개의 인수 즉 옵션을 주면, 아래와 같이 나옵니다.
%0 (퍼센트 + 제로) 는 배치파일 자체의 이름이 자동으로 입력되어 있습니다.
가령, 배치파일의 이름이 "example.bat" 이라면, %0 는 example.bat 입니다.
예를 들어, 배치를 실행할 때 준 1번째 인수는 %1 이라는 변수에 들어가 있고, 2번째 인수는 %2 라는 변수에 자동으로 들어가 있습니다. %9 까지 있을 수 있습니다. 따라서 그 변수를 배치파일 속에 그대로 기입해 주면 됩니다. 별도의 루틴을 작성한다든지 할 필요는 없고 간단합니다.
다음 예제를 실행해 보면 쉽게 알 수 있습니다. 첫번째 인수와, 두번째 인수를 화면에 출력하고, %* 이것은 모든 인수를 의미합니다. 그래서 입력받은 모든 인수들을 개수에 상관없이 모두 한꺼번에 하나의 문자열로 출력합니다.
예제 배치파일 파일명: example.bat
@echo off
echo 첫번째 인수: %1
echo 두번째 인수: %2
echo 모든 인수: %*
echo 첫번째 인수: %1
echo 두번째 인수: %2
echo 모든 인수: %*
도스창(윈도우에서의 정식명칭은 '명령 프롬프트')에서 example.bat 을 실행시킬 때, 뒤에 AAA BBB CCC 이런 3개의 인수 즉 옵션을 주면, 아래와 같이 나옵니다.
D:\Z>example.bat AAA BBB CCC
첫번째 인수: AAA
두번째 인수: BBB
모든 인수: AAA BBB CCC
D:\Z>
첫번째 인수: AAA
두번째 인수: BBB
모든 인수: AAA BBB CCC
D:\Z>
%0 (퍼센트 + 제로) 는 배치파일 자체의 이름이 자동으로 입력되어 있습니다.
가령, 배치파일의 이름이 "example.bat" 이라면, %0 는 example.bat 입니다.
tag: batch
배치파일 | DOS CMD BATCH .BAT | VBScript .VBS
<< Home