PowerShell Disk Space Monitoring in 2025: Local and Cloud


Estimated reading time: 2 minutes

Monitor Disk Space with PowerShell in 2025

Tracking disk space is a timeless IT task, but in 2025, PowerShell 7.4 brings cross-platform power and cloud integration to the table. Whether you’re managing local servers or Azure VMs, this guide delivers a modern script to keep your drives in check.

Local Disk Monitoring (Windows/Linux)

Step 1: Run the Script
Fire up PowerShell 7.4 (download from GitHub if you’re still on 5.1). Paste this:

# Get disk space in GB
$drives = Get-Volume | Where-Object {$_.OperationalStatus -eq 'OK'} | 
          Select-Object @{Name='Drive';Expression={$_.DriveLetter + ':'}}, 
                       @{Name='FreeGB';Expression={[math]::Round($_.SizeRemaining/1GB,2)}}, 
                       @{Name='TotalGB';Expression={[math]::Round($_.Size/1GB,2)}}
$drives | Format-Table -AutoSize

Step 2: Export (Optional)
Save to CSV: $drives | Export-Csv "DiskSpace_$(Get-Date -Format 'yyyyMMdd').csv" -NoTypeInformation. Open in Excel for reports.

Cloud Monitoring (Azure VMs)

Step 1: Connect
Install the Az module (Install-Module -Name Az), then log in: Connect-AzAccount.

Step 2: Query VMs
Run this to list Azure VMs and their total disk sizes:

$vms = Get-AzVM | ForEach-Object {
    $disk = Get-AzDisk -ResourceGroupName $_.ResourceGroupName -DiskName $_.StorageProfile.OsDisk.Name
    [PSCustomObject]@{VMName=$_.Name; TotalGB=$disk.DiskSizeGB; FreeGB='Requires VM Agent'}
}
$vms | Format-Table -AutoSize

Step 3: Advanced Option
For true free space, install the Azure VM agent and use Invoke-AzVMRunCommand to run Get-Volume remotely—contact us for a full script!

2025 Edge: Why PowerShell 7?

PowerShell 7.4’s speed and JSON support (try $drives | ConvertTo-Json) outshine old 5.1 Get-PSDrive tricks. It’s cross-platform—run it on Linux with no changes.

Want more automation? See our Windows 11 Deployment Guide for setup tips.


Discover more from TechyGeeksHome

Subscribe to get the latest posts sent to your email.



Source link

Leave a Reply

Your email address will not be published. Required fields are marked *