VBS腳本獲得CPU使用率,硬盤使用率和內存使用率

在不用第三方軟件前提下想定時檢查服務器的cpu使用率硬盤使用率和內存使用率,並生成報表在服務器巡檢過程當中至關實用,其實在Windows下,能夠用批處理命令寫一個腳本,在必定程度上完成這些簡單的任務,可是若是想要實現複雜的功能,批處理命令就力不從心了。處理批處理命令,微軟還提供了WSH。咱們能夠使用VBScript來寫腳本,訪問其內置對象或COM對象,而後讓其在WSH中執行,就能夠完成較爲複雜的功能。下面提供幾種實用的代碼,只須要將代碼複製到文本文檔而後保存爲vbs格式就能夠在windows上直接運行了,若是是win2k的系統那麼你須要從xp或win2003的system32下copy 「CScript.exe」到vbs的腳本目錄。windows

CPU 使用率代碼以下服務器

CPU 使用率代碼以下ide

On Error Resume Next Set objProc = GetObject("winmgmts:\\.\root\cimv2:win32_processor='cpu0'") Wscript.Echo "CPU 使用率: " & objProc.LoadPercentage & "%"

硬盤 使用率代碼以下對象

Set fsoobj = CreateObject("Scripting.FileSystemObject") DriversInfo = GetDriversInfo DriversInfo = Replace(DriversInfo, "|", vbCrLf) sReturn ="硬盤信息:" & vbCrLf & DriversInfo Wscript.Echo sReturn Function GetDriversInfo() GetDriversInfo = "" Set drvObj = fsoobj.Drives For Each D In drvObj Err.Clear If D.DriveLetter <> "A" Then If D.isReady Then GetDriversInfo = GetDriversInfo & "分區:" & D.DriveLetter & vbCrLf GetDriversInfo = GetDriversInfo & "可用空間:" & cSize(D.FreeSpace) & vbCrLf GetDriversInfo = GetDriversInfo & "總大小:" & cSize( D.TotalSize) & vbCrLf GetDriversInfo = GetDriversInfo & "使用率 :" & (100*((D.TotalSize-D.FreeSpace)/D.TotalSize)) &"%" & vbCrLf GetDriversInfo = GetDriversInfo & "|" Else End If Else End If Next End Function Function cSize(tSize) If tSize &gt;= 1073741824 Then cSize = Int((tSize / 1073741824) * 1000) / 1000 & " GB" ElseIf tSize &gt;= 1048576 Then cSize = Int((tSize / 1048576) * 1000) / 1000 & " MB" ElseIf tSize &gt;= 1024 Then cSize = Int((tSize / 1024) * 1000) / 1000 & " KB" Else cSize = tSize & "B" End If End Function

內存 使用率代碼以下ip

strComputer = "." set objWMI = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") set colOS = objWMI.InstancesOf("Win32_OperatingSystem") for each objOS in colOS strReturn = "內存總數: " & round(objOS.TotalVisibleMemorySize / 1024) & " MB" & vbCrLf &"內存可用數: " & round(objOS.FreePhysicalMemory / 1024) & " MB" & vbCrLf &"內存使用率 :" & Round(((objOS.TotalVisibleMemorySize-objOS.FreePhysicalMemory)/objOS.TotalVisibleMemorySize)*100) & "%" Wscript.Echo strReturn next

若是想把結果保存在文本里只須要用批處理調用內存

echo off echo CPU信息:&gt;info.xls cscript //Nologo cpu.vbs &gt;&gt; info.xls echo.&gt;&gt;info.xls echo 內存信息:&gt;&gt;info.txt cscript //Nologo ram.vbs &gt;&gt; info.txt echo.&gt;&gt;info.xls cscript //Nologo hard.vbs &gt;&gt; info.txt rem copy info.xls "%date%".xls
相關文章
相關標籤/搜索