Powershell命令获取文件系统驱动器名称 - 成员枚举

时间:2018-02-14 02:37:42

标签: powershell enumeration

我正在尝试获取磁盘空间并在Windows 2008 R2企业版中使用空间。但是命令无法获取值。此命令在Windows 2012版本中可以正常工作。

Get-PSDrive -PSProvider FileSystem将获取以下详细信息..

使用名称(GB)免费(GB)提供商 ---- --------- --------- -------- C 71.99 166.23文件系统 H 71.99 166.23文件系统

(Get-PSDrive -PSProvider FileSystem).Name - 获取驱动器名称,因此我用它来获取其他详细信息。

但是,相同的命令对Windows 2008 R2企业版不起作用。有没有解决这个问题?

1 个答案:

答案 0 :(得分:0)

(Get-PSDrive -PSProvider FileSystem).Name依赖于 member enumeration,这是PSv3中引入的功能,而 Windows Server 2008 R2附带PSv2

成员枚举表示您可以在集合(数组)上访问.Name等属性,并在所有上隐式访问该属性该集合的成员,结果收集在数组

在PSv2中,您必须使用ForEach-Object cmdlet (或其别名%):

Get-PSDrive -PSProvider FileSystem | % { $_.Name } # return drive names as array