CMD 명령 :
setx SOMEVARIABLE "newpath" /M
setx SOMEVARIABLE "%SOMEVARIABLE%;newpath2" /M
에 대한 예상 출력 ECHO %SOMEVARIABLE%
:
newpath;newpath2
실제 출력 :
%SOMEVARIABLE%
저장된 실제 값 (시스템 특성 – & gt; 환경 변수 GUI에서) :
%SOMEVARIABLE%;newpath2
내가 예상 출력을 얻을 수있는 유일한 방법은 환경 변수를 수정할 때마다 명령 프롬프트를 다시 시작하는 것입니다.
동일한 프로세스 동안 여러 번 추가하는 환경 변수 값을 자동화하려면이 명령을 사용하고 있습니다.
- 다시 시작하지 않고 환경 변수를 cmd에서 업데이트하지 않는 이유는 무엇입니까?
- 업데이트되지 않은 % SOMEVARIABLE %의 업데이트 된 값을 가져올 수 있습니까?
명령 프롬프트를 다시 시작 하시겠습니까?
답변
문제는 setx
수정하다 지구 환경 , 지역 환경이 아닙니다. 따라서 변경 사항을 적용하려면 명령 프롬프트를 다시 시작해야합니다.
두 가지 옵션이 있습니다.
- 지구 환경을 변화시키는 다른 도구를 사용하십시오. 과 지역 환경
-
두 가지 작업을 수행하고이를 사용하는 배치 파일을 만듭니다.
::setenv.bat @echo off set %1=%2 setx %1 %2 %3