关于Windows:从命令行列出所有环境变量?

List all environment variables from command line?

我想知道是否可以从Windows的命令提示符中列出所有的环境变量。

与PowerShell的gci env:ls env:dir env:相当的东西。


只做:

1
SET

您还可以执行SET prefix来查看名称以prefix开头的所有变量。

例如,如果要从环境变量中只读derbydb,请执行以下操作:

1
set derby

…您将得到以下信息:

1
DERBY_HOME=c:\Users\amro-a\Desktop\db-derby-10.10.1.1-bin\db-derby-10.10.1.1-bin


乔恩的回答是对的,但要用一些句法上的糖分来阐述更多的内容。

1
SET | more

使您能够一次只看到一页变量,而不是整页变量,或者

1
SET > output.txt

将输出发送到一个文件output.txt,您可以在记事本中打开该文件或其他文件…


要列出PowerShell中的所有环境变量,请执行以下操作:

1
Get-ChildItem Env:

来源:https://technet.microsoft.com/en-us/library/ff730964.aspx


只需从cmd运行set

Displays, sets, or removes environment variables. Used without parameters, set displays the current environment settings.


我会说set命令并不真正打印所有环境变量。例如,我们可以回送诸如cd、日期、时间之类的变量,但它们并没有列在集合输出中。

例如,获得可用于批处理写入的变量的完整列表是很有趣的。


你可以在命令中使用set

为了显示当前变量,只需set就足够了。

要显示某些变量,如"path",请使用SET PATH

要获得帮助,请键入set /?


如其他线程中所述,您可以使用set列出所有环境变量或使用

set [environment_varible]得到带值的特定变量。

set [environment_varible]=可用于从空间中删除变量。


不要浪费时间在注册表中搜索它

注册表查询"hklmsystemcurrentcontrolsetcontrolsession managerenvironment"

返回LESS THEN SET命令


如果要查看刚刚设置的环境变量,需要打开一个新的命令窗口。"用setx变量设置的变量只能在未来的命令窗口中使用,而不能在当前的命令窗口中使用。"(https://technet.microsoft.com/en-us/library/cc755104(v=ws.11).aspx bkmk_示例)