현재 작업 디렉토리의 전체 경로를 얻는 데 사용할 수있는 Windows 명령 행 명령이 있습니까?
또한 배치 파일에 사용되는 변수 에이 경로를 어떻게 저장할 수 있습니까?
현재 작업 디렉토리의 전체 경로를 얻는 데 사용할 수있는 Windows 명령 행 명령이 있습니까?
또한 배치 파일에 사용되는 변수 에이 경로를 어떻게 저장할 수 있습니까?
답변:
cd쉘을 직접 사용하거나 %cd%배치 파일에서 사용하려는 경우 인수없이 사용하십시오 (환경 변수처럼 작동 함).
다음과 같이 배치 / 환경 변수를 설정할 수 있습니다.
SET var=%cd%
ECHO %var%
Windows 7 x64 cmd.exe의 샘플 스크린 샷

업데이트 :SET var = %cd% 대신에다음을 수행하면됩니다SET var=%cd%. jeb에게 감사합니다.

SET var = %cd%변수의 값을 넣어 var<space>로하지 var. SET 명령에서 공백을 피해야합니다
set명령에 대한 Windows 도움말을 인용하십시오 (set /? ).
명령 확장이 활성화 된 경우 몇 가지 동적
확장 할 수 있지만 표시되지 않는 환경 변수
SET에 의해 표시되는 변수의리스트 이 변수 값은
변수 값이 확장 될 때마다 동적으로 계산됩니다.
사용자가 이러한 이름 중 하나를 사용하여 변수를 명시 적으로 정의하면
해당 정의는 아래 설명 된 동적 정의를 대체합니다.
% CD %-현재 디렉토리 문자열로 확장됩니다.
% DATE %-DATE 명령과 동일한 형식을 사용하여 현재 날짜로 확장합니다.
% TIME %-TIME 명령과 동일한 형식을 사용하여 현재 시간으로 확장합니다.
% RANDOM %-0에서 32767 사이의 임의의 10 진수로 확장됩니다.
% ERRORLEVEL %-현재 ERRORLEVEL 값으로 확장
% CMDEXTVERSION %-현재 명령 프로세서 확장으로 확장
버전 번호.
% CMDCMDLINE %-호출 한 원래 명령 행으로 확장
명령 프로세서.
그 %CD% - expands to the current directory string.부분을 주목하십시오 .
이것은 항상 나를 위해 일했습니다 :
SET CurrentDir="%~dp0"
ECHO The current file path this bat file is executing in is the following:
ECHO %CurrentDir%
Pause
Windows의 경우 cd자체적으로 현재 작업 디렉토리가 표시됩니다.
UNIX 및 유사한 시스템의 pwd경우 동일한 작업을 수행합니다. $PWD일부 쉘 에서 쉘 변수를 사용할 수도 있습니다 . Windows가 쉘 변수를 통해 현재 작업 디렉토리를 가져 오는 것을 지원하는지 확실하지 않습니다.
%cd%
Windows에서 :
CHDIR 현재 디렉토리의 이름을 표시하거나 변경합니다.
리눅스에서 :
PWD 현재 디렉토리의 이름을 표시합니다.
크리에이트 .bat파일 아래를 System32, 우리가 그것을 이름을 보자 copypath.bat현재의 경로를 복사하는 명령을 할 수있다 :
echo %cd% | clip
설명 :
%cd% 현재 경로를 제공합니다
CLIP
Description:
Redirects output of command line tools to the Windows clipboard.
This text output can then be pasted into other programs.
Parameter List:
/? Displays this help message.
Examples:
DIR | CLIP Places a copy of the current directory
listing into the Windows clipboard.
CLIP < README.TXT Places a copy of the text from readme.txt
on to the Windows clipboard.
이제 copyclip어디서나 사용할 수 있습니다.
@echo off
for /f "usebackq tokens=*" %%x in (`chdir`) do set var=%%x
echo The currenct directory is: %var%
그러나, 물론 , gmaran23의 대답은 훨씬 쉽게 하나입니다.
tokens=*그 수정을 추가 합니다.