실행 된 스크립트의 디렉터리를 가져 와서 .cmd 파일 내에서 사용하려면 어떻게해야합니까?명령 줄 .cmd/.bat 스크립트, 실행 스크립트의 디렉터리를 얻는 방법
답변
레이몬드 첸은 몇 가지 아이디어가 있습니다
쉬운 방법은을 사용하는 것입니다 : MSDN 아카이브가 어느 정도 신뢰할 수없는 경향이 있기 때문에 전체 여기에 인용
http://blogs.msdn.com/oldnewthing/archive/2005/01/28/362565.aspx
%CD%
의사 변수. 현재 작업 디렉토리 으로 확장됩니다... do stuff ..
chdir /d %OLDDIR% &rem restore current directory
set OLDDIR=%CD%
은 (물론, 디렉토리는/더 쉽게 는pushd
/popd
으로 수행되어 있지만, 여기서는 요점이 아니에요 수 복원하기.)
%CD%
트릭 명령 행에서도 편리합니다. 예를 들어, 은 종종 에 작업하려는 파일이있는 디렉토리에서 자신을 찾습니다.하지만 ... 오, 그 작업을 수행하려면 의 순서로 다른 디렉토리에 chdir해야합니다.cd ... some other directory ...
somecommand args %_% args
은 (I 내 스크래치 환경 변수로
set _=%CD%\curfile.txt
%_%
를 사용하고 싶다.)타입
SET /?
명령 프로세서에 의해 제공되는 다른 유사 변수를 표시.
는 또한 문서의 의견은 가치, 예를 들어 스캔이 하나 :이 %의 사용에 대해 설명
http://blogs.msdn.com/oldnewthing/archive/2005/01/28/362565.aspx#362741
~ DP0 :
하는 경우 배치 파일의 저장 위치를 알고 싶습니다.
%~dp0
%0
은 배치 파일의 이름입니다.~dp
은 지정된 인수 인 의 드라이브와 경로를 제공합니다.
이 스크립트의 경로에 상당 :
%~dp0
이것은 배치 파라미터 확장 구문을 이용한다. 매개 변수 0은 항상 스크립트 자체입니다.
스크립트가 C:\example\script.bat
에 저장된 경우 %~dp0
은 C:\example\
으로 평가됩니다.
ss64.com에는 매개 변수 확장 구문에 대한 자세한 정보가 있습니다. 다음은 관련 발췌 부분입니다.
\매개 변수의 값은 % 다음에 명령 행의 숫자 위치를 사용하여 얻을 수 있습니다.
[...]
파라미터는 다음 확장 구문을 적용 할 수있는 파일명 공급하는데 사용된다:
가[...]
퍼센트 ~ D1 % 1 확장을 드라이브 문자 만 - C :
[...]
퍼센트 ~ P1은 경로 % 1을 확장에만 예 \ utils \ this는 일부 명령에 의해 이스케이프 문자로 해석 될 수있는 후미를 포함합니다.
[...] 상기 한 결합 될 수
수식어 :
퍼센트 드라이브 문자 및 경로 만
[...]
% 1을 확장 ~ DP1 배치 스크립트 자체의 경로 이름을 % 0으로 가져올 수 있습니다. 매개 변수 확장을이 경로에 적용 할 수 있습니다. % ~ dp0은 배치 스크립트에 대한 드라이브 및 경로를 반환합니다. W : \ 스크립트
정확히 내가 필요한 것. 그리고이 anwser를 미리 알림으로 블로그에 연결했습니다 :) –
인용문에서 버그/오류가 있는지는 모르지만 스크립트에서는 "% ~ d0"이 필요합니다! 내 경우에는 % ~ d1이 비어 있습니다. – eftokay83
내 눈/상황에서 이것은 수용된 대답보다 우수합니다.명령 줄 스크립트를 "관리자 권한으로"실행 (오른쪽 클릭)하면 스크립트가 Windows \ system32에서 실행됩니다. 허용 된 대답은 스크립트 위치를 알려주지 않으며 Windows \ system32를 다시 제공합니다. 나는. 이 답변은 당신이 그것을 고칠 수 있도록 도와줍니다. 여러분은 cd % ~ dp0로 스크립트를 시작합니다. –
for /F "eol= delims=~" %%d in ('CD') do set curdir=%%d
pushd %curdir%
의
- 1. MySQL 명령 줄 스크립트
- 2. 쉘 스크립트의 변수에서 명령 실행
- 3. Python 명령 줄 실행
- 4. JBoss 로그 디렉터리를 얻는 방법
- 5. 자이 썬 - 실행 된 스크립트의 경로를 얻는 방법
- 6. Python 실행 명령 줄 (시간)
- 7. Java에서 명령 줄 프로그램 실행
- 8. 명령 줄 인수 prog 실행
- 9. 프로그램 내에서 명령 줄 실행 - 모든 명령 실행 문제 없음
- 10. PHP - 스크립트 실행 속도 명령 줄 대 브라우저에서
- 11. IIS 6.0 명령 줄 실행 권한 집합
- 12. bash 스크립트의 공백이있는 Perl 명령 줄 인수를 처리 하시겠습니까?
- 13. Cygwin에서 - "실행 명령"에서 실행 스크립트 silenty
- 14. bash 스크립트 실행 su 명령
- 15. PHP 스크립트의 의존성을 얻는 방법?
- 16. 실행중인 프로세스에 대한 명령 줄 인수를 얻는 방법
- 17. 실행중인 Perl 스크립트의 경로 및 이름을 얻는 방법
- 18. unittest 명령 줄 인수 방법?
- 19. 실행중인 Perl 스크립트의 이름을 얻는 방법
- 20. 실행, 명령 줄 및 경로 변수
- 21. ant 빌드 파일에서 명령 줄 코드 실행
- 22. 명령 줄 PHP w/Scroll에서 "less"실행
- 23. Java : 명령 줄 인수로 ffmpeg 실행
- 24. 로그인시 Windows XP에서 명령 줄 항목 실행
- 25. Scorm 1.2 Player : 명령 줄 실행
- 26. 명령 줄 스위치가 실행 파일 경로에서 파싱되었습니다.
- 27. 적은 처리 능력을 사용하는 명령 줄 프로세스를 얻는 방법
- 28. 명령 줄 프로그램을 테스트 할 쉘 스크립트
- 29. Time Machine API/명령 줄 스크립트?
- 30. 명령 줄 node.js; 모듈로 스크립트 실행하기
가능한 중복 [? Windows에서 배치 스크립트의 경로를 얻는 방법] (http://stackoverflow.com/questions/3827567/how- 창에서 배치 스크립트의 경로를 얻으십시오) – Celada