← 返回所有文章

查詢 CPU 使用率

Utils系統資訊CPULinuxWindowsmacOS作者:VincentCorgi約 1 分鐘閱讀

功能

彙整 Linux、Windows、macOSCPU 使用率、負載、各核心忙碌程度 的指令與輸出該怎麼看。

情境

  • 機器卡頓、服務 timeout、或要確認 是否 CPU 打滿 時快速採樣;容量規劃時與 硬體規格 對照「幾核心」一起讀。

Linux

Code
top -bn1 | head -20

top -bn1 以 batch 模式跑一次並輸出;head -20 只取前 20 行,方便腳本或速查。

Code
mpstat 1 1

mpstat(需安裝 sysstat)每秒取樣一次、共 1 次,輸出整體與各 CPU 使用率。

輸出範例(top 的 CPU 行):

Code
%Cpu(s):  2.3 us,  1.0 sy,  0.0 ni, 96.5 id,  0.0 wa,  0.0 hi,  0.2 si,  0.0 st

us 使用者、sy 系統、id 閒置;id 高表示 CPU 負載低。

Windows

Code
Get-Counter '\Processor(_Total)\% Processor Time' -SampleInterval 1 -MaxSamples 1

取「整體處理器時間百分比」一次;數值 0–100,愈高表示 CPU 愈忙。

Code
Get-CimInstance Win32_Processor | Select-Object LoadPercentage

LoadPercentage 為當下 CPU 負載百分比,不需取樣間隔。

輸出範例:

Code
Timestamp                 CounterSamples
---------                 --------------
3/12/2025 10:00:00 AM     \\<hostname>\processor(_total)\% processor time : <value>

macOS

Code
top -l 1 -stats pid,command,cpu

-l 1 只更新一次;-stats 指定顯示欄位,含 cpu 即各 process 的 CPU 使用率。

Code
ps -A -o %cpu,comm | head -20

列出所有 process 的 CPU 百分比與指令名稱,前 20 行可快速看誰吃 CPU。

輸出範例(top 摘要行):

Code
CPU usage: 8.0% user, 5.2% sys, 86.8% idle

idle 高表示 CPU 負載低。