PowerShell脚本硬盘驱动器清单

我已经创build了一个脚本来从我们的服务器获取硬盘信息。 该脚本使用WMI查询Win32_LogicalDisk类,并为每个服务器的每个设备ID(本地磁盘)返回“大小(GB)”,“可用空间(GB)”和“可用空间(%)”。

我想按照每个服务器上每个设备ID的“可用空间(%)”进行sorting。 当我按“可用空间(%)”sorting时,它不显示每个设备ID。 一台服务器同时具有C:和D:驱动器,但只有D:驱动器显示在输出中。 如果我删除Sort-Object "Free Space (%)"可用Sort-Object "Free Space (%)" ,它将显示每个服务器的所有设备ID。

任何人都可以帮我用这个脚本?

 $computers = C:\users\mtrajano\documents\powershell\scripts\list.txt $logicalDisk = Get-WmiObject Win32_LogicalDisk -Filter "DriveType=3" -Computer $computers | Select-Object SystemName, DeviceID, @{ Name = "Size (GB)"; Expression = { "{0:N1}" -f ($_.size / 1GB) } }, @{ Name = "Free Space (GB)"; Expression = { "{0:N1}" -f ($_.freespace / 1GB) } }, @{ Name = "Free Space (%)"; Expression = { "{0:P2}" -f (($_.freespace / 1GB) / ($_.size / 1GB)) } } | Sort-Object "Free Space (%)" | ConvertTo-Html | Out-String $messageParameters = @{ To = "" From = "" Subject = "" Body = $logicalDisk SmtpServer = "" } Send-MailMessage @messageParameters -BodyasHtml