I had previous written very breifly about creating a report on disk space using WMI
A much better, and very concise instruction for querying disk information (including %free) can be found here:
https://msdn.microsoft.com/en-us/library/aa394173(v=vs.85).aspxThis could be easily adapted to be driven from a list of servers in a text file, in a query, or received from something like a net view command
Write-Host "Drive information for MY_Server"
Get-WmiObject -Class Win32_LogicalDisk -ComputerName MY_Server |
Where-Object {$_.DriveType -ne 5} |
Sort-Object -Property Name |
Select-Object Name, VolumeName, FileSystem, Description, VolumeDirty, `
@{"Label"="DiskSize(GB)";"Expression"={"{0:N}" -f ($_.Size/1GB) -as [float]}}, `
@{"Label"="FreeSpace(GB)";"Expression"={"{0:N}" -f ($_.FreeSpace/1GB) -as [float]}}, `
@{"Label"="%Free";"Expression"={"{0:N}" -f ($_.FreeSpace/$_.Size*100) -as [float]}} |
Format-Table -AutoSize
OUTPUT:
Drive information for MY_Server
Name VolumeName FileSystem Description VolumeDirty DiskSize(GB) FreeSpace(GB) %Free
---- ---------- ---------- ----------- ----------- ------------ ------------- -----
A: 3 1/2 Inch Floppy Drive 0 0
C: NTFS Local Fixed Disk False 59.9 5.83 9.74
D: Programs NTFS Local Fixed Disk False 200 18.03 9.02
E: Product_1 NTFS Local Fixed Disk False 250 99.57 39.83
F: Product_2 NTFS Local Fixed Disk False 20 7.02 35.09
R: Product_3 MVFS Network Connection 78.13 48.83 62.5