在Windows 7中,当我启动命令提示符时,是否有任何命令来显示环境变量的内容(例如JAVA_HOMEPATH变量)?

我尝试使用echo $PATHecho PATH$PATH但这些都不起作用。

评论

@Daniel:我知道如何在Windows中设置环境变量,我只需打开“系统属性”>“高级”和“环境变量”。因此,我不希望在标题为“如何设置PATH和其他环境变量?”的问题中回答我的问题,因为我知道!我不是在问如何设置它们。

从某种意义上来说,您是对的-作为另一个主题的作者之一,我很长一段时间没有真正注意到确切的用词。我编辑了该主题以反映其实际内容。我不打算更改投票,这既是因为我不能,而且是因为我坚持认为该主题没有进行任何研究。

可能相关:stackoverflow.com/questions/1884071/…

echo%path:; =&echo。%可以得到漂亮的分号分隔路径列表。如果变量不包含特殊字符(如&或^),则适用。

Windows命令外壳中打印路径的命令是:path

#1 楼

在Windows命令提示符中,语法为echo %PATH%

要获取所有环境变量的列表,请输入命令set

要将这些变量发送到文本文件,请输入命令set > filename.txt


相关的


如何分别列出全局环境变量和用户特定的环境变量?


评论


为什么该值与我在计算机属性中指定的值不同?

–Johnny_D
2013年9月19日上午9:45

@Johnny_D您可能覆盖了用户范围的变量或会话范围的变量(在关闭控制台窗口后在命令提示符内使用set命令无法保留更改)。

–斯科特·张伯伦
2013年12月7日在9:09

@RedGrittyBrick,您如何区分整个系统中的设置和仅针对当前用户的设置?

–起搏器
17年2月16日在6:31

@Pacerier,那将是一个单独的问题

– RedGrittyBrick
17年2月16日在10:31

#2 楼

为了补充先前的答案,如果您使用的是Powershell echo %PATH%,则将无法正常工作。您需要改用以下命令:echo $Env:PATH

评论


另外在PS中:ls env:用于列出所有环境变量

–乔治·莫尔(George Mauer)
2015年8月8日在16:24

由于PowerShell现在是现代Windows操作系统的默认外壳,因此需要提高投票率。太多的答案根本无法在现代Windows上使用。

–级别
18年5月14日在10:35

@Lev。您有没有cmd的哪个版本?

–疯狂物理学家
18年5月24日在18:20

因此,如果变量名称中包含点,则如何显示该变量?像artifactory.user.name一样? echo $ Env:artifactory.user.name不起作用(突出显示它试图显示工件变量)

– YakovL
19年5月15日在14:52

#3 楼

作为附加信息:尽管SET使用全局变量或系统变量,但有时您需要写入和读取用户变量,而这是通过SETX命令完成的。 SETX包含在从Vista开始的Windows的基本安装中,但在Windows XP中也可以通过安装Resource Pack来使用。

SETX的一个不同之处在于,您不能在同一目录中读取变量您在其中写入命令窗口。必须在一个Command或Powershell窗口中写入SETX命令,然后打开一个新窗口以使用ECHO读取它。

SETX还可以写入全局或系统变量。

使用SETX设置用户变量:

setx variable value


使用SETX设置全局变量或系统变量:

setx /m variable value


要读取用户或全局变量:

请记住,必须打开新的Command或Powershell窗口才能读取此变量。

echo %variable%


#4 楼

从SET / ?:


SET P


将显示所有以字母'P'开头的变量


因此,例如,如果要查找环境变量%PATH%的值,则只需键入set path即可。

这比echo %PATH%短3个字符,但请注意,它还会列出其他以“ path”开头的变量”(例如PATHEXT)。

#5 楼

显示环境变量的内容路径,在命令提示符下键入:echo %path%
要在单独的行中显示值,请键入:set
要显示以“ h”开头的所有变量,请键入:set h
(键入

以上命令是针对cmd而非Powershell的。
在powershell中,键入:echo $env:pathls env:path
要在单独的行上显示,请键入:ls env:
要显示所有以“ h”开头的变量,请键入:ls env:h*
要显示所有包含“ java”的变量的内容/值,请输入:ls env:*java*

#6 楼

解决方案对我来说有点不同:它无法识别系统环境变量JAVA_HOME,所以我不得不将JAVA_HOME设置为User环境变量,以便可以在系统环境变量设置中使用%JAVA_HOME%。

继续,我必须:



添加用户环境变量:%JAVA_HOME%为:

"C:\Program Files\Java\jdk1.8.0_25";



添加到%PATH%系统环境变量:

"%JAVA_HOME%\bin;"



后缀在命令行:

echo %JAVA_HOME%,和它检索了正确的路径(在无法识别之前);

echo %PATH%,并且检索了由%JAVA_HOME%用户组成的“ C:\ Program Files \ Java \ jdk1.8.0_25 \ bin”变量;


对我有用。希望对您有所帮助!

#7 楼

Powershell:

echo $Env:PATH


命令提示符:

echo $Env:%PATH%


命令提示符%PATH%也可以工作

#8 楼

在powershell上,如果要用分号分隔符列出所有值分隔符,请使用:
$env:Path-split';'