2012년 10월 23일 화요일

dp0bin 의 의미 (vcvars32.bat 을 호출한다.)

visual c
설정을 하려다가 아무래도 command line 설정 방법을 알아보다가...

build environment (= compile environment, 컴파일 환경, 빌드 환경)을 설정하는
vsvarsall.bat, vcvarsall.bat, vcvars32.bat, 등등을 보게 되었다.
(주의: 첫번째 파일 이름의 2번째 글자는 's' 이고,
  두번째 파일 이름의 2번째 글자는 'c' 이다. 둘이 위치도 파일 이름도 다르다.
)
그런데, 아무래도 vcvarsall.bat 파일에 있는

"%~dp0bin\vcvars32.bat" 호출 속에 있는
%~dp0bin
이라는 폴더 이름이 무엇인지 모르겠어서 google 검색을 했더니,
검색어 :
dp0bin vcvars32.bat

http://social.msdn.microsoft.com/Forums/is/vssetup/thread/d52dcdd3-0ab4-4c0a-a0f4-91c30f8e00d3

그래서, 이것이 현재 실행하는 batch 파일의 위치를 가리킨다는 것을 알게 되었다.
그리고, 그 답변의 아래에 불평하는 사람의 글이 있었다.
도대체 %~dp0 라는 것이 무엇을 뜻하는 것인지 어떻게 알아먹으라고 이렇게 웃기는 이름을 만들었느냐는 것이다. 거기에 간단하게 답변되어 있는 Windows XP 매뉴얼 페이지에는
Windows XP이후의 윈도우즈 운영체제의 batch 파일 문법이 나와있었다. 이런 것을 예전에는 절대로 알지 못하는 것이었다.
 그래서, 이런 불평을 통해서 좀 더 많은 것을 알게 되었다.

http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/batch.mspx?mfr=true
여기에서 맨 처음의 고리를 따라가면,
Using batch parameters

http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/percent.mspx?mfr=true

여기에서는 그냥 %~dp0 로써만이 아니라, %~dp0%~n0.%~x0 이렇게 하거나, 그냥
%~f0
라고 하는 것이 무엇인지에 대해서 알게 된다.

댓글 없음:

댓글 쓰기