例如,在“控制面板\系统和安全性\系统”>“高级系统设置”>“系统属性”>“高级选项卡”>“环境变量...”中
我具有以下PATH:
值1:
PATH=%JAVA_HOME%\bin;e:\Groovy\GROOVY~1.0\bin;E:\Python;C:\Users\MyName\AppData\Local\GitHubDesktop\bin;%PYTHON3_HOME%;%GROOVY_HOME%\bin;
在cmd中,我会这样做:
echo %PATH%
然后我得到:
值2:
E:\Program Files\Java\jdk1.8.0_151\bin;e:\Groovy\GROOVY~1.0\bin;C:\Users\MyName\AppData\Local\GitHubDesktop\bin;E:\Program Files\Python\Python36-32;E:\Program Files (x86)\Groovy\Groovy-2.6.0\bin;
然后,cmd中的哪个命令将能够打印出与系统属性(值1 )中的变量名称(%JAVA_HOME%等)相同的确切PATH值?
答案 0 :(得分:2)
set <variableName>
命令在不解释内容的情况下显示变量。
或者,您也可以为此延迟扩展。
setlocal EnableDelayedExpansion
echo !path!
但对于您而言,echo %path%
中的扩展将不会扩展PATH内容的任何百分比(您只会遇到&|<>
等其他字符的问题)
使用set PATH=%JAVA_HOME%\bin
设置路径后,内容已经扩展。
设置百分比部分而不是扩展版本时,PATH
搜索不再起作用,因为cmd.exe会尝试在%JAVA_HOME%
的文字路径中搜索
要从系统属性中获取PATH的定义,可以通过REG QUERY
从注册表中检索。
带有
的用户变量reg query HKEY_CURRENT_USER\Environment /v path
和系统变量
reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v path
答案 1 :(得分:0)
从cmd中尝试:
powershell gci env:<name_variable>
示例:powershell gci env:Path
如果您希望所有变量名都以Path开头(或结尾),只需在变量名之后(或之前)添加*
。
示例:powershell gci env:*Path*
:-)