友人プログラマ
WindowsPCなら誰でも簡単に使える
『仕事してる風』プログラム作ったからブログで紹介してくれよ
・・・。
目次
メモリ使用率が最も高いプロセスを上から50件表示し、マシンのCPU稼働率と全体のメモリ使用率を毎秒表示するコード
while ($true) {
Clear-Host
# メモリ使用率の高いプロセスを上から10件取得し、表形式で表示
$processes = Get-Process | Sort-Object WorkingSet -Descending | Select-Object -First 50
$processes | Format-Table -AutoSize
$processes = $null # オブジェクトをクリア
# CPUの稼働率を取得し表示
$cpuUsage = (Get-WmiObject Win32_PerfFormattedData_PerfOS_Processor).PercentProcessorTime
Write-Host "CPU 使用率: $cpuUsage%" -ForegroundColor Green
# メモリ使用状況を取得し表示
$memory = Get-WmiObject Win32_OperatingSystem
$usedMemory = $memory.TotalVisibleMemorySize - $memory.FreePhysicalMemory
$totalMemory = $memory.TotalVisibleMemorySize
$memoryUsage = "{0:N0} / {1:N0} ({2:P})" -f $usedMemory, $totalMemory, ($usedMemory / $totalMemory)
Write-Host "メモリ 使用状況: $memoryUsage" -ForegroundColor Green
$memory = $null # オブジェクトをクリア
# ガベージコレクションを実行
[GC]::Collect()
# 1秒ごとに表示を更新
Start-Sleep -Seconds 1
}
これこれ、コレなんすよ
1行ずつプロセスを表示していって「なんか処理してる風」が出るコード
while ($true) {
Clear-Host # コンソールをクリア
# プロセスの一覧を取得し表示
$processes = Get-Process | Sort-Object WorkingSet -Descending | Select-Object -First 50
$rowCount = 0
foreach ($process in $processes) {
$process | Select-Object -Property Id, Handles, CPU, SI, Name | ForEach-Object {
$processInfo = $_.Id, $_.Handles, $_.CPU, $_.SI, $_.Name -join ","
Write-Host $processInfo -ForegroundColor Green
Write-Host "" # 改行
}
$rowCount++
if ($rowCount -lt $processes.Count) {
# 更新間隔(ミリ秒)を指定
Start-Sleep -Milliseconds 100
$currentCursorPosition = $Host.UI.RawUI.CursorPosition
$currentCursorPosition.Y -= 1
$Host.UI.RawUI.CursorPosition = $currentCursorPosition
}
}
# リソースの情報を取得し表示
$cpuUsage = Get-WmiObject Win32_PerfFormattedData_PerfOS_Processor | Select-Object -ExpandProperty PercentProcessorTime
$memoryUsage = Get-WmiObject Win32_OperatingSystem | Select-Object -ExpandProperty FreePhysicalMemory
Write-Host "CPU 使用率: $cpuUsage%" -ForegroundColor Green
Write-Host "メモリ 使用量: $memoryUsage KB" -ForegroundColor Yellow
# 更新間隔(秒)を指定
Start-Sleep -Seconds 2
}
これをモニターに表示させとけば
「なんか集中する作業してる感」が出ること間違いなし!
皆様のお役に立たないことを願うばかりです。