여기 무슨 일 이니? 배치가 왜 내 주장을 "올바르게"옮기지 않는지에 대해 완전히 당황 스럽다.% dp0의 배치 파일에서 시프트가 예상대로 작동하지 않는 이유는 무엇입니까?
C:\Users\Public>foo bar
C:\Users\Public\
C:\Users\Public\
ECHO is off.
이 경우는 '더 기대'은 다음과 같습니다 :
C:\Users\Public>foo c:/this/is/some/other/path
C:\Users\Public\
c:\this\is\some\other\
ECHO is off.
및
여기 내가 PARAM 그것을 실행할 때 발생하는 상황@echo off
echo %~dp0
shift
echo %~dp0
shift
echo %~dp0
:
여기 foo.bat입니다
C:\Users\Public>foo this/is/some/other/path
C:\Users\Public\
C:\Users\Public\this\is\some\other\
ECHO is off.
하지만 누군가가 정확히 무슨 일이 일어나는지 명확히 할 수 있습니까? 나는 아마도이 더 확장 버전이 도움이 될 것입니다 ... 그것은 드라이브와 경로로 '바'를 해석하려고 노력하지만, 그냥 내 첫 번째 경우에서 '바'로 올 것