ps1脚本结合zabbix查询占用率保留两位小数
powershell查询内存硬盘占用率
zabbix_get获取CPU监控项的值为占有率
$Server = $env:computername
#server's CPU Mem Hardinfor
#$cpu = Get-WMIObject -Computername $Server win32_Processor
$mem = gwmi -ComputerName $Server win32_OperatingSystem
$Disk = gwmi -Computer: $Server win32_logicaldisk -filter "drivetype=3 and DeviceID='D:'"
#$Usecpu = "{0:0}%" -f $cpu.LoadPercentage
$Allmem = "{0:0.0} MB" -f ($mem.TotalVisibleMemorySize / 1KB)
$Freemem = "{0:0.0} MB" -f ($mem.FreePhysicalMemory / 1KB)
$Permem = "{0:00.00}%" -f ((($mem.TotalVisibleMemorySize-$mem.FreePhysicalMemory)/$mem.TotalVisibleMemorySize)*100)
$Usedisk = $Disk | Foreach-Object { '{1:0.00}%' -f $_.Caption, (($_.Size - $_.FreeSpace) / $_.Size * 100)}
$Util = C:"\Program Files\Zabbix Agent\bin\zabbix_get" -s "127.0.0.1" -k "system.cpu.util"
$Usetil = $Util -as [double] #将Util的string类型转为double类型
$Usecpu = "{0:n2}%" -f $Usetil #将小数保留2位
Write-Host "$Usecpu" "$Permem" "$Usedisk"