PowerShell:Get-Item与Get-ChildItem输出类型

问题描述 投票:1回答:1

我试图按字母顺序(按名称)打印环境变量,而我想出的第一件事是:

Get-Item env: | Sort-Object -Property Name

但是输出始终未排序。然后我尝试了以下]]

Get-ChildItem env: | Sort-Object -Property Name

并获得了预期的,正确排序的输出。这表明,即使Get-ItemGet-ChildItem的(格式化)输出看起来完全相同(即字典),Get-Item env:Get-ChildItem env:的输出也不属于同一类型。

将命令输出传递到| Get-TypeData,发现Get-Item env:似乎实际上仅返回单个System.Collections.DictionaryEntry,而Get-ChildItem env:返回多个System.Collections.DictionaryEntry对象。

有人能解释一下这里到底发生了什么吗?为什么两个看似不同的输入数据类型会产生相同的外观输出/字符串表示形式? PowerShell是否在Get-Item输出中对单项字典对象进行隐式“拆箱”?

在Windows 10上使用PowerShell 5.1。

我试图按字母顺序(按名称)打印环境变量,而我想出的第一件事是:Get-Item env:| Sort-Object -Property Name但是输出始终为...

powershell sorting get-childitem sort-object
1个回答
1
投票

tl; dr:

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.