In partnership with

10x the context. Half the time.

Speak your prompts into ChatGPT or Claude and get detailed, paste-ready input that actually gives you useful output. Wispr Flow captures what you'd cut when typing. Free on Mac, Windows, and iPhone.

Fix that. Live. With Clay + HubSpot.

Defining your ICP on vibes is a pipeline killer. In Build Your GTM Alpha, Clay + HubSpot for Startups walk you through a live build. Real prospect list. Real enrichment. Real outreach sequence. You don't leave with a plan. You leave with outbound running. June 18. 11am ET / 4pm GMT.

THE PROBLEM

Disk space fills up silently. No warning, no alert — just a server that stops responding at the worst possible moment. By the time someone notices, services are crashing and users are screaming. This week we build a script that watches your drives 24/7 and emails you before it becomes a crisis.

THE SCRIPT

Open Notepad, paste the script below, and save it to:

C:\Scripts\DiskSpaceMonitor.ps1

PowerShell Script:

# Disk Space Monitor & Alert System
# Automate & Operate — automateandoperate.com

# Settings — update these
$threshold = 20        # Alert when disk is below this % free
$from = "[email protected]"
$to = "[email protected]"
$smtpServer = "smtp.gmail.com"
$smtpPort = 587
$username = "[email protected]"
$password = ConvertTo-SecureString "yourpassword" -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential($username, $password)
$logFile = "C:\Logs\DiskSpaceMonitor.log"

# Create log folder if missing
if (-not (Test-Path "C:\Logs")) {
    New-Item -ItemType Directory -Path "C:\Logs"
}

# Check all drives
$drives = Get-PSDrive -PSProvider FileSystem

foreach ($drive in $drives) {
    if ($drive.Free -eq $null) { continue }

    $totalGB = [math]::Round(($drive.Used + $drive.Free) / 1GB, 2)
    $freeGB = [math]::Round($drive.Free / 1GB, 2)
    $freePercent = [math]::Round(($drive.Free / ($drive.Used + $drive.Free)) * 100, 1)
    $timestamp = Get-Date -Format "yyyy-MM-dd HH:mm:ss"

    if ($freePercent -lt $threshold) {
        $message = "$timestamp — WARNING: Drive $($drive.Name) is $freePercent% free ($freeGB GB of $totalGB GB remaining)"
        Add-Content -Path $logFile -Value $message

        Send-MailMessage `
            -From $from -To $to `
            -Subject "DISK ALERT: Drive $($drive.Name) on $env:COMPUTERNAME is $freePercent% free" `
            -Body "$message`n`nTake action immediately to avoid service disruption.`n`nAutomate & Operate" `
            -SmtpServer $smtpServer -Port $smtpPort `
            -UseSsl -Credential $credential

        Write-Host "ALERT sent for drive $($drive.Name)"
    } else {
        Add-Content -Path $logFile -Value "$timestamp — OK: Drive $($drive.Name) is $freePercent% free ($freeGB GB remaining)"
        Write-Host "Drive $($drive.Name) is OK — $freePercent% free"
    }
}

Update these lines with your details:

  • $threshold — change 20 to whatever % you want alerts at

  • $from — your Gmail address

  • $to — where alerts should go

  • $password — your Gmail password or app password

SETTING UP TASK SCHEDULER

  1. Press Windows key → type Task Scheduler → open it

  2. Click "Create Basic Task" in the right panel

  3. Name it: Disk Space Monitor → click Next

  4. Trigger: Daily → click Next

  5. Start time: 6:00am → click Next

  6. Action: "Start a program" → click Next

  7. Program: powershell.exe

  8. Arguments:

-ExecutionPolicy Bypass -File "C:\Scripts\DiskSpaceMonitor.ps1"
  1. Click Next → Finish

Set it to repeat every 2 hours:

  1. Right click Disk Space MonitorProperties

  2. Click Triggers tab → Edit

  3. Check "Repeat task every" → set to 2 hours

  4. Duration: Indefinitely

  5. Click OK → OK

TEST IT

Open PowerShell as administrator and run:

powershell

powershell.exe -ExecutionPolicy Bypass -File "C:\Scripts\DiskSpaceMonitor.ps1"

Then check C:\Logs\DiskSpaceMonitor.log to confirm it's logging each drive correctly.

To test the alert email, temporarily set $threshold = 99 — this forces an alert regardless of actual disk space. Once confirmed working, set it back to 20.

WHY THIS MATTERS

Full disks are one of the most common and most preventable causes of server outages. SQL Server stops writing logs. IIS stops serving pages. Event logs stop recording. All because nobody was watching the disk. This script gives you eyes on every drive, on every server, around the clock — for free.

THIS WEEK'S ACTION

Deploy this on your busiest server today. Set the threshold to 20% and let it run for a week. Check your logs Friday — you might be surprised what you find.

Reply to this email if you hit any issues — I read every reply.

Automate & Operate — automateandoperate.com

Keep Reading