最近有次打patch的时候,因为服务器C盘空间剩余不多结果产生了一堆警报,虽然不是很严重不过这种问题还是可以避免的,写了个非常简单的脚本来检测服务器C盘的空间,和各位分享一下

    首先你要收集一下服务器的信息,主要就是FQDN,然后将这些信息列在一个CSV文件中,读取这个CSV文件,然后对每一台Server执行一个脚本块,之后将结果输出到控制台中即可

    下面分享下脚本的内容

    

Get-Content "E:\abc.csv" | %{

Invoke-Command -ComputerName $_ -ScriptBlock {

$name = ""

$size = 0

$name = (Get-WmiObject -Class Win32_ComputerSystem).name + "." + (Get-WmiObject -Class Win32_ComputerSystem).domain

$size = ((Get-WMIObject Win32_LogicalDisk | ? { $_.deviceid -match "c" }).freespace)/1GB

if ($size -lt 15)

{

Write-Host -ForegroundColor 'red' -BackgroundColor 'Cyan' ($name + "   Free Space C:  {0:n1} GB" -f $size)

}

else

{

Write-Host ($name + "   Free Space C:  {0:n1} GB" -f $size)

}

}

}

Read-Host


    这里设置的是C盘15G以下就会以其他颜色输出,也可以根据需要手动修改,脚本运行非常简单,右键点击使用powershell运行即可。以下是结果

    使用PowerShell统计服务器C盘空间_第1张图片