powershell提供四种查看磁盘剩余容量的方法:一、get-psdrive -psprovider filesystem;二、get-volume过滤fixed类型;三、get-ciminstance win32_volume;四、wmic logicaldisk命令。

如果您在Windows系统中需要快速查看各盘符的剩余磁盘容量,PowerShell提供了多种内置命令实现该目标。以下是几种直接、可靠且无需额外工具的操作方法:
一、使用 Get-PSDrive 查看所有文件系统驱动器空间
Get-PSDrive 命令默认列出所有PowerShell驱动器(含注册表、证书等),但通过限定提供者可精准提取本地磁盘信息,适用于快速概览所有已挂载的文件系统盘符及其可用空间。
1、以管理员或普通用户身份打开 PowerShell 窗口。
2、执行以下命令仅显示文件系统类驱动器:Get-PSDrive -PSProvider FileSystem。
3、观察输出中的 Free 列,单位为字节;如需GB单位,可追加格式化:Get-PSDrive -PSProvider FileSystem | Select-Object Name, @{Name="Free(GB)";Expression={[math]::Round($_.Free/1GB,2)}}, @{Name="Used(GB)";Expression={[math]::Round(($_.Used)/1GB,2)}}。
二、使用 Get-Volume 查看卷级详细空间信息
Get-Volume 是专为卷管理设计的cmdlet,能准确区分固定磁盘、可移动设备及健康状态,支持按驱动器类型过滤,避免虚拟或网络驱动器干扰结果。
1、在 PowerShell 中运行:Get-Volume,获取全部卷列表。
2、若只关注本地固定磁盘,执行:Get-Volume | Where-Object {$_.DriveType -eq 'Fixed'}。
3、如需查看C盘详细空间(含已用、可用、总容量),运行:Get-Volume -DriveLetter C | Select-Object DriveLetter, SizeRemaining, Size, HealthStatus。
三、使用 WMI/CIM 查询 Win32_Volume 类获取原始字节值
Win32_Volume 类直接映射物理卷对象,绕过PowerShell抽象层,返回未格式化的原始数值,适合脚本集成与精确计算,且兼容旧版Windows系统。
1、输入命令:Get-CimInstance -ClassName Win32_Volume | Where-Object {$_.DriveType -eq 3} | Select-Object DriveLetter, Capacity, FreeSpace。
2、FreeSpace 和 Capacity 均为字节值;如需转换为GB并保留两位小数,可使用:@{Name="Free(GB)";Expression={[math]::Round($_.FreeSpace/1GB,2)}}。
3、注意:此方法会包含系统保留分区(无盘符),若仅需有盘符的卷,添加条件 -and $_.DriveLetter。
四、使用 wmic 命令行工具(CMD兼容模式)
wmic 是Windows内置的WMI命令行接口,不依赖PowerShell运行环境,适用于受限策略下的系统或批处理调用,输出为纯文本格式,便于管道解析。
1、在 PowerShell 或 CMD 中执行:wmic logicaldisk where "drivetype=3" get deviceid,freespace,size。
2、freespace 和 size 单位均为字节;如需人工换算,将 freespace 除以 1024^3 得到GB值。
3、若仅需C盘,改为:wmic logicaldisk where "deviceid='C:' and drivetype=3" get deviceid,freespace,size。











