%PATH%를 시스템 범위 환경 변수로만 평가합니다.

%PATH%를 시스템 범위 환경 변수로만 평가합니다.

Windows의 명령줄에서는 인쇄하기 전에 이러한 순서로 echo %PATH%시스템 변수와 사용자 변수를 병합하는 것으로 나타납니다 PATH. 그것은 합리적으로 보이지만 시스템 변수만(또는 사용자 변수만) 인쇄할 수 있기를 바랍니다.
이는 echo단지 예일 뿐이므로 다른 명령에서도 작동할 것으로 예상됩니다.

누구나 쉽게 할 수 있다세트/M명령 을 실행할 때 플래그를 사용하거나 사용하지 않음 SETX:

SETX PATH "D:\some\user\path"
^ sets the user variable PATH
SETX PATH "C:\some\system\path" /M
^ sets the system-wide variable PATH

하지만평가하다 %PATH%그런 식으로 하는 것은 그렇게 간단해 보이지 않습니다(또는 심지어 가능하지도 않습니다). 간단히 입력하면 다음과 %PATH%같은 결과가 나옵니다.

C:\some\system\path;D:\some\user\path

C:\some\system\path만 (또는 만 ) 검색이 가능합니까 D:\some\user\path?

나는 둘을 쉽게 구별할 수 있는 GUI 인터페이스가 있다는 것을 알고 있습니다. 그러나 저는 명령줄만을 사용하여 이 작업을 수행하고 싶습니다.

답변1

언제든지 레지스트리 값을 직접 쿼리할 수 있습니다.

for /f "skip=2 tokens=2*" %a in ('reg query HKCU\Environment /v PATH') do @echo %b

for /f "skip=2 tokens=2*" %a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PATH') do @echo %b

관련 정보