PowerShell ile Anlık CPU, RAM ve Disk Kullanımı İzleme (tr-TR)

%3CLINGO-SUB%20id%3D%22lingo-sub-1375304%22%20slang%3D%22en-US%22%3EPowerShell%20ile%20Anl%C4%B1k%20CPU%2C%20RAM%20ve%20Disk%20Kullan%C4%B1m%C4%B1%20%C4%B0zleme%20(tr-TR)%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1375304%22%20slang%3D%22en-US%22%3E%3CP%3EWindows%20Server%20Core%20kullananlar%C4%B1n%20%C3%A7ok%20i%C5%9Fine%20yarayacak%20olan%20bu%20script%20sayesinde%20CPU%2C%20Ram%20ve%20Disk%20kullan%C4%B1mlar%C4%B1n%C4%B1z%C4%B1%20anl%C4%B1k%20olarak%20g%C3%B6r%C3%BCnt%C3%BCleyebilirsiniz.%20PowerShell%20ile%20bir%20%C3%A7ok%20veriyi%20size%20tek%20sat%C4%B1rda%20sunan%20bu%20script%20sayesinde%20kaynak%20kullan%C4%B1mlar%C4%B1n%C4%B1z%C4%B1%20anl%C4%B1k%20izleyerek%20optimize%20edebilirsiniz.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-powershell%22%3E%3CCODE%3Ewhile(%24true)%0A%7B%0A%0A%20%20%20%20%24ComputerCPU%20%3D%20(Get-WmiObject%20%20-Class%20win32_processor%20-ErrorAction%20Stop%20%7C%20Measure-Object%20-Property%20LoadPercentage%20-Average%20%7C%20Select-Object%20Average).Average%0A%0A%20%20%20%20%24ComputerMemory%20%3D%20Get-WmiObject%20%20-Class%20win32_operatingsystem%20-ErrorAction%20Stop%0A%20%20%20%20%24UsedMemory%20%3D%20%24ComputerMemory.TotalVisibleMemorySize%20-%20%24ComputerMemory.FreePhysicalMemory%0A%20%20%20%20%24Memory%20%3D%20((%24UsedMemory%2F%20%24ComputerMemory.TotalVisibleMemorySize)*100)%0A%20%20%20%20%24RoundMemory%20%3D%20%5Bmath%5D%3A%3ARound(%24Memory%2C%202)%0A%20%0A%20%23%24disk%20%3D%20Get-PSDrive%20C%20%7C%20Select-Object%20Used%2CFree%20%0A%20%0A%20%24TotalDisk%20%3D%20Get-WMIObject%20Win32_LogicalDisk%20-Filter%20%22DeviceID%3D'C%3A'%22%20%20%7C%20ForEach-Object%20%7B%5Bmath%5D%3A%3Atruncate(%24_.Size%20%2F%201GB)%7D%0A%20%24FreeSpace%20%3D%20Get-WMIObject%20Win32_LogicalDisk%20-Filter%20%22DeviceID%3D'C%3A'%22%20%20%7C%20ForEach-Object%20%7B%5Bmath%5D%3A%3Atruncate(%24_.freespace%20%2F%201GB)%7D%0A%0A%20%20%20%20%24Date%20%3D%20Get-Date%20-DisplayHint%20Date%20-Format%20MM%2Fdd%2Fyyyy%0A%0A%20%20%20%20%24Time%20%3D%20Get-Date%20-DisplayHint%20Time%20-Format%20HH%3Amm%3Ass%0A%0A%20%20%20%20Write-Host%20%22Date%3A%20%22%20%24Date%20%22%20Time%3A%20%22%20%24Time%20%22%20CPU%3A%20%22%20%24ComputerCPU%20%22%20Memory%3A%20%22%20%24RoundMemory%20%22%20Free%20Space%3A%20%22%20%24Freespace%20%22%20Total%20Size%20%3A%20%22%20%24TotalDisk%0A%20%20%20%20%0A%20%20%20%20sleep%202%0A%7D%0A%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3EUygulama%20%C3%A7%C4%B1kt%C4%B1s%C4%B1%20a%C5%9Fa%C4%9F%C4%B1daki%20gibidir.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-powershell%22%3E%3CCODE%3EPS%20C%3A%5CUsers%5CAdministrator%5Cdesktop%26gt%3B%20.%5CPSkaynakmonitor.ps1%0ADate%3A%20%2004%2F10%2F2019%20%20Time%3A%20%2017%3A45%3A16%20%20CPU%3A%20%201%20%20Memory%3A%20%2019.25%20%20Free%20Space%3A%20%2023%20%20Total%20Size%20%3A%20%2059%0ADate%3A%20%2004%2F10%2F2019%20%20Time%3A%20%2017%3A45%3A22%20%20CPU%3A%20%201.75%20%20Memory%3A%20%2019.31%20%20Free%20Space%3A%20%2023%20%20Total%20Size%20%3A%20%2059%0ADate%3A%20%2004%2F10%2F2019%20%20Time%3A%20%2017%3A45%3A29%20%20CPU%3A%20%2012.75%20%20Memory%3A%20%2019.26%20%20Free%20Space%3A%20%2023%20%20Total%20Size%20%3A%20%2059%0ADate%3A%20%2004%2F10%2F2019%20%20Time%3A%20%2017%3A45%3A35%20%20CPU%3A%20%200.75%20%20Memory%3A%20%2019.26%20%20Free%20Space%3A%20%2023%20%20Total%20Size%20%3A%20%2059%0ADate%3A%20%2004%2F10%2F2019%20%20Time%3A%20%2017%3A45%3A42%20%20CPU%3A%20%201.25%20%20Memory%3A%20%2019.26%20%20Free%20Space%3A%20%2023%20%20Total%20Size%20%3A%20%2059%0ADate%3A%20%2004%2F10%2F2019%20%20Time%3A%20%2017%3A45%3A48%20%20CPU%3A%20%200.75%20%20Memory%3A%20%2019.26%20%20Free%20Space%3A%20%2023%20%20Total%20Size%20%3A%20%2059%0ADate%3A%20%2004%2F10%2F2019%20%20Time%3A%20%2017%3A45%3A54%20%20CPU%3A%20%200.75%20%20Memory%3A%20%2019.25%20%20Free%20Space%3A%20%2023%20%20Total%20Size%20%3A%20%2059%0ADate%3A%20%2004%2F10%2F2019%20%20Time%3A%20%2017%3A46%3A01%20%20CPU%3A%20%201%20%20Memory%3A%20%2019.25%20%20Free%20Space%3A%20%2023%20%20Total%20Size%20%3A%20%2059%0ADate%3A%20%2004%2F10%2F2019%20%20Time%3A%20%2017%3A46%3A07%20%20CPU%3A%20%201%20%20Memory%3A%20%2019.26%20%20Free%20Space%3A%20%2023%20%20Total%20Size%20%3A%20%2059%0ADate%3A%20%2004%2F10%2F2019%20%20Time%3A%20%2017%3A46%3A14%20%20CPU%3A%20%200.75%20%20Memory%3A%20%2019.25%20%20Free%20Space%3A%20%2023%20%20Total%20Size%20%3A%20%2059%0ADate%3A%20%2004%2F10%2F2019%20%20Time%3A%20%2017%3A46%3A20%20%20CPU%3A%20%203.25%20%20Memory%3A%20%2019.25%20%20Free%20Space%3A%20%2023%20%20Total%20Size%20%3A%20%2059%0ADate%3A%20%2004%2F10%2F2019%20%20Time%3A%20%2017%3A46%3A27%20%20CPU%3A%20%2011.5%20%20Memory%3A%20%2019.25%20%20Free%20Space%3A%20%2023%20%20Total%20Size%20%3A%20%2059%0A%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1375304%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3EWindows%20PowerShell%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E
Highlighted
Contributor

Windows Server Core kullananların çok işine yarayacak olan bu script sayesinde CPU, Ram ve Disk kullanımlarınızı anlık olarak görüntüleyebilirsiniz. PowerShell ile bir çok veriyi size tek satırda sunan bu script sayesinde kaynak kullanımlarınızı anlık izleyerek optimize edebilirsiniz.

 

 

while($true)
{

    $ComputerCPU = (Get-WmiObject  -Class win32_processor -ErrorAction Stop | Measure-Object -Property LoadPercentage -Average | Select-Object Average).Average

    $ComputerMemory = Get-WmiObject  -Class win32_operatingsystem -ErrorAction Stop
    $UsedMemory = $ComputerMemory.TotalVisibleMemorySize - $ComputerMemory.FreePhysicalMemory
    $Memory = (($UsedMemory/ $ComputerMemory.TotalVisibleMemorySize)*100)
    $RoundMemory = [math]::Round($Memory, 2)
	
	#$disk = Get-PSDrive C | Select-Object Used,Free 
	
	$TotalDisk = Get-WMIObject Win32_LogicalDisk -Filter "DeviceID='C:'"  | ForEach-Object {[math]::truncate($_.Size / 1GB)}
	$FreeSpace = Get-WMIObject Win32_LogicalDisk -Filter "DeviceID='C:'"  | ForEach-Object {[math]::truncate($_.freespace / 1GB)}

    $Date = Get-Date -DisplayHint Date -Format MM/dd/yyyy

    $Time = Get-Date -DisplayHint Time -Format HH:mm:ss

    Write-Host "Date: " $Date " Time: " $Time " CPU: " $ComputerCPU " Memory: " $RoundMemory " Free Space: " $Freespace " Total Size : " $TotalDisk
    
    sleep 2
}

Uygulama çıktısı aşağıdaki gibidir.

 

PS C:\Users\Administrator\desktop> .\PSkaynakmonitor.ps1
Date:  04/10/2019  Time:  17:45:16  CPU:  1  Memory:  19.25  Free Space:  23  Total Size :  59
Date:  04/10/2019  Time:  17:45:22  CPU:  1.75  Memory:  19.31  Free Space:  23  Total Size :  59
Date:  04/10/2019  Time:  17:45:29  CPU:  12.75  Memory:  19.26  Free Space:  23  Total Size :  59
Date:  04/10/2019  Time:  17:45:35  CPU:  0.75  Memory:  19.26  Free Space:  23  Total Size :  59
Date:  04/10/2019  Time:  17:45:42  CPU:  1.25  Memory:  19.26  Free Space:  23  Total Size :  59
Date:  04/10/2019  Time:  17:45:48  CPU:  0.75  Memory:  19.26  Free Space:  23  Total Size :  59
Date:  04/10/2019  Time:  17:45:54  CPU:  0.75  Memory:  19.25  Free Space:  23  Total Size :  59
Date:  04/10/2019  Time:  17:46:01  CPU:  1  Memory:  19.25  Free Space:  23  Total Size :  59
Date:  04/10/2019  Time:  17:46:07  CPU:  1  Memory:  19.26  Free Space:  23  Total Size :  59
Date:  04/10/2019  Time:  17:46:14  CPU:  0.75  Memory:  19.25  Free Space:  23  Total Size :  59
Date:  04/10/2019  Time:  17:46:20  CPU:  3.25  Memory:  19.25  Free Space:  23  Total Size :  59
Date:  04/10/2019  Time:  17:46:27  CPU:  11.5  Memory:  19.25  Free Space:  23  Total Size :  59

 

0 Replies