(먼저 배치에 대한이 유용한 참조 사이트를 추천하고 싶습니다 :
http://ss64.com/nt/ )
그런 다음 또 다른 유용한 설명 : http://htipe.wordpress.com/2008/10/09/the-dp0-variable/
% ~ dp0 변수
받는 사람 확장하는 Windows 배치 파일 내에서 참조 할 때 %는 ~ DP0 변수 (즉, 제로의) D 리베 문자와 P는 그 배치 파일의 ATH.
변수 % 0- % 9는 배치 파일의 명령 줄 매개 변수를 나타냅니다. % 1- % 9는 배치 파일 이름 뒤의 명령 줄 인수를 나타냅니다. % 0은 (는) 배치 파일 자체를 나타냅니다.
물결표 문자 (~)로 퍼센트 문자 (%)를 따르는 경우 변수가 확장되는 방식을 변경하기 위해 매개 변수 번호 앞에 수정자를 삽입 할 수 있습니다. d 수정자는 드라이브 문자로 확장되고 p 수정자는 매개 변수의 경로로 확장됩니다.
예 : C :에 bat_files라는 디렉토리가 있고 그 디렉토리에 example.bat라는 파일이 있다고 가정하십시오. 이 경우 % ~ dp0 (d와 p 수정자를 결합한)은 C : \ bat_files로 확장됩니다.
자세한 설명은 이 Microsoft 기사 를 확인하십시오 .
또한 이 포럼 스레드를 확인하십시오 .
그리고 여기 에서보다 명확한 참조 :
%CmdCmdLine%
CMD.EXE에 전달 된 전체 명령 줄을 반환합니다
%*
첫 번째 명령 줄 인수에서 시작하여 나머지 명령 줄을 반환합니다 (Windows NT 4의 경우 % *에는 모든 선행 공백이 포함됨)
%~dn
% n이 유효한 경로 또는 파일 이름 (UNC 없음) 인 경우 드라이브 문자 % n (n은 0에서 9 사이의 범위)을 반환
%~pn
% n이 유효한 경로 또는 파일 이름 인 경우 % n의 디렉토리를 반환합니다 (UNC 없음)
%~nn
% n이 유효한 파일 이름 인 경우 % n의 파일 이름 만 반환합니다.
%~xn
% n이 유효한 파일 이름 인 경우 % n의 파일 확장자 만 반환합니다.
%~fn
% n이 유효한 파일 이름 또는 디렉토리 인 경우 % n의 완전한 경로를 리턴합니다.
추가 1
신비한 ~
물결표 연산자에 대한 좋은 참고 자료를 찾았습니다 .
이 %~
문자열을 퍼센트 물결표 연산자 라고 합니다. 다음과 같은 상황에서 찾을 수 있습니다 %~0
.
이 :~
문자열을 콜론 틸드 연산자 라고 합니다. 당신은 그것을 찾을 수 있습니다 %SOME_VAR:~0,-1%
.
추가 2-1:12 오후 7/6/2018
%1-%9
명령 행 인수를 참조하십시오. 유효한 경로 값 이 아닌 경우 %~dp1
- %~dp9
는 모두 같은 값으로 확장됩니다 %~dp0
. 그들이하지만 있는 유효한 경로 값은, 그들로 확장됩니다 자신의 드라이버 / 경로 값.
예를 들면 다음과 같습니다. (batch.bat)
@echo off
@echo ~dp0= %~dp0
@echo ~dp1= %~dp1
@echo ~dp2= %~dp2
@echo on
실행 1 :
D:\Workbench>batch arg1 arg2
~dp0= D:\Workbench\
~dp1= D:\Workbench\
~dp2= D:\Workbench\
실행 2 :
D:\Workbench>batch c:\123\a.exe e:\abc\b.exe
~dp0= D:\Workbench\
~dp1= c:\123\
~dp2= e:\abc\