Evaluar %PATH% como variable de entorno de alcance del sistema exclusivamente

Evaluar %PATH% como variable de entorno de alcance del sistema exclusivamente

En la línea de comando de Windows, echo %PATH%parece fusionar las variables del sistema y del usuario PATHen ese orden antes de imprimir. Eso parece razonable, pero también me gustaría poder imprimir sólo la variable del sistema (o, alternativamente, sólo la variable de usuario).
Tenga en cuenta que echoes sólo un ejemplo; esperaría que funcionara con cualquier otro comando.

Uno puede fácilmentecolocarya sea usando (o no) la /Mbandera al emitir el SETXcomando:

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

Peroevaluando %PATH%de esa manera no parece tan simple (ni siquiera posible). Simplemente escribiendo %PATH%resultados en:

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

¿Sería posible recuperar solo C:\some\system\path(o solo D:\some\user\path)?

Soy consciente de la existencia de una interfaz GUI que permite distinguir fácilmente entre los dos. Sin embargo, me gustaría realizar esta tarea utilizando sólo la línea de comando.

Respuesta1

Siempre puedes consultar los valores del registro directamente:

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

información relacionada