为什么Get-CimInstance CIM_LogicalDisk return 两种类型?

Why does Get-CimInstance CIM_LogicalDisk return two types?

为什么 Get-CimInstance CIM_LogicalDisk return 既是 Win32_LogicalDisk 又是 Win32_MappedLogicalDisk

有 Win32_MappedLogical 磁盘 CIM class,但没有 Cim_MappedLogicalDisk` class。应该有吗?

在 pwsh 6 中似乎也没有。 Linux 上的 pwsh 6 中没有 CIM cmdlet。 CIM 是 Microsoft 独有的东西吗?我想没有。

C:>$Provider = Get-CimInstance CIM_LogicalDisk | Where-Object { $_.Name -eq 'W:' }

C:>$Provider.Count
2

CIM_LogicalDisk returns 本地和映射逻辑磁盘对象。您可以像这样匹配 Win32_LogicalDiskCIM_LogicalDisk 类型:

$Provider = Get-CimInstance CIM_LogicalDisk | Where-Object {
  $_.Name -eq 'W:' -And $_.CimClass.CimClassName -match '^(CIM|Win32)_LogicalDisk$'
}

这应该省略 $Provider 中的 Win32_MappedLogicalDisk 对象。

关于您关于 Linux、this Powershell Github issue from April 州 Posh 上没有 CIM cmdlet 的问题,"There are no plans to port the CIM cmdlets to non-Windows."