使用cmd获取当前用户路径变量而不使用系统路径
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用cmd获取当前用户路径变量而不使用系统路径相关的知识,希望对你有一定的参考价值。
当我使用我的标准用户(也是管理员)登录时,命令echo %PATH%
返回系统的路径+用户的路径。我怎样才能获得用户的路径?
例如。当我的当前用户的路径是C:
uby;C:javain
并且系统的路径是%SystemRoot%system32;%SystemRoot%
时,上面的命令返回%SystemRoot%system32;%SystemRoot%;C:
uby;C:javain
但我只想拥有C:
uby;C:javain
以便能够永久地附加到用户的路径而不包括系统的路径垃圾。
我的目标是将目录附加到路径变量。我试图用命令setx PATH %PATH%;C:
ubyin
执行此操作,因为系统的路径而破坏了我的路径变量。
答案
如果变量存在,因为它不是默认情况下,您可以使用注册表获取该变量。
这是命令提示符中的一种方法:
For /F "Skip=2Tokens=1-2*" %A In ('Reg Query HKCUEnvironment /V PATH 2^>Nul') Do @Echo %A=%C
另一答案
使用PowerShell的另一种方式。
(Get-ItemProperty HKCU:Environment).PATH
或者,从cmd.exe shell。
powershell -NoProfile -Command "(Get-ItemProperty HKCU:Environment).PATH"
为了在没有插值的情况下检索变量。
(Get-Item -Path HKCU:Environment).GetValue('PATH', $null, 'DoNotExpandEnvironmentNames')
powershell -NoProfile -Command ^
"(Get-Item -Path HKCU:Environment).GetValue('PATH', $null, 'DoNotExpandEnvironmentNames')"
以上是关于使用cmd获取当前用户路径变量而不使用系统路径的主要内容,如果未能解决你的问题,请参考以下文章
在 Windows cmd 中,如何在当前目录中运行可执行文件(而不是在 %PATH% 中具有相同名称的可执行文件)而不参考完整路径? [关闭]