使用 PowerShell 我可以获取所有(当前进程)环境变量并对其进行格式化和排序:
gci env: | %{"{0}={1}" -f $_.Name,$_.Value} | sort
这使:
a=foo
b=bar
c=baz
但这给出了所有流程变量,而我只想要用户变量,所以我这样做:
[Environment]::GetEnvironmentVariables("User") | %{"{0}={1}" -f $_.Name,$_.Value} | sort
但它只输出以下内容:
=
作品[Environment]::GetEnvironmentVariables("User")
,以及之后的东西,都是问题。
答案1
问题是它[Environment]::GetEnvironmentVariables("User")
返回的是哈希表,而不是对象集合。有几种方法可以得到你想要的。下面是其中一种:
([Environment]::GetEnvironmentVariables("User")).GetEnumerator() | %{'{0} = {1}' -f $_.Key, $_.Value}