如何使用 PowerShell 获取磁盘信息?

powershellmicrosoft technologiessoftware & coding

要使用 PowerShell 获取 Windows 磁盘信息,我们可以使用 WMI 命令或 CIM 类命令。

使用 WMI 命令:

Gwmi Win32_LogicalDisk

使用 CIM 实例方法:

Get_minus;CimInstance Win32_LogicalDisk

您可以看到两个输出完全相同。我们使用其中一个。

DeviceID DriveType ProviderName VolumeName Size FreeSpace
-------- --------- ------------ ---------- ---- ---------
C: 3 53317988352 44027125760
D: 5 HRM_SSS_X64FREE_EN-US_DV5 3694962688 0
E: 3 Temporary Storage 10734268416 10238513152

现在,Windows 关联了不同的驱动器类型,它们各自拥有相同的编号。例如,驱动器类型 "3" 指的是逻辑磁盘。其他类型如下所示。

2 = "可移动磁盘"

3 = "固定本地磁盘"

4 = "网络磁盘"

5 = "压缩磁盘"

这里,我们将仅过滤逻辑系统磁盘。为此,我们可以使用以下命令。

Get−CimInstance Win32_LogicalDisk | where{$_.DriveType −eq '3'}

输出

DeviceID DriveType ProviderName VolumeName Size FreeSpace
-------- --------- ------------ ---------- ---- ---------
C: 3 53317988352 44027023360
E: 3 Temporary Storage 10734268416 10238513152

以上大小以字节为单位。您可以使用表达式将其转换为 GB。使用以下命令将 Size 和 FreeSpace 转换为 GB。

Get−CimInstance Win32_LogicalDisk | where{$_.DriveType −eq '3'} `
| Select DeviceID, DriveType,VolumeName,
@{N='TotalSize(GB)';E={[Math]::Ceiling($_.Size/1GB)}}, @{N='FreeSize(GB)';E={[Math]::Ceiling($_.FreeSpace/1GB)}} |
ft −AutoSize

输出

DeviceID DriveType VolumeName TotalSize(GB) FreeSize(GB)
-------- --------- ---------- ------------- ------------
C: 3 50 42
E: 3 Temporary Storage 10 10

相关文章