查詢記憶體(RAM)使用量
- Utils系統資訊RAM記憶體LinuxWindowsmacOS作者:VincentCorgi約 1 分鐘閱讀
功能
彙整 Linux、Windows、macOS 查 RAM 總量、已用/可用、swap 等資訊的指令與輸出該怎麼讀。
情境
- 服務變慢、懷疑 記憶體不足或 OOM、或要填監控/容量規劃數字時快速查本機用量。
- 硬體「規格」請參考 查詢 CPU、RAM、GPU、硬碟規格。
Linux
Code
free -h
-h 以人類可讀單位(GiB、MiB)顯示;列出 total、used、free、shared、buff/cache、available。
Code
cat /proc/meminfo | head -10
讀取核心提供的記憶體資訊,可看到 MemTotal、MemFree、Buffers、Cached 等細項。
輸出範例(free -h):
Code
total used free shared buff/cache available
Mem: 7.7Gi 2.1Gi 3.2Gi 100Mi 2.4Gi 5.2Gi
Swap: 2.0Gi 0.0Gi 2.0Gi
available 才是實際可給新程式用的記憶體(含可回收的 cache)。
Windows
Code
Get-CimInstance Win32_OperatingSystem | Select-Object TotalVisibleMemorySize, FreePhysicalMemory | ForEach-Object { [PSCustomObject]@{ TotalMB = [math]::Round($_.TotalVisibleMemorySize/1024,2); FreeMB = [math]::Round($_.FreePhysicalMemory/1024,2) } }
TotalVisibleMemorySize、FreePhysicalMemory 單位為 KB,除以 1024 得到 MB。
Code
systeminfo | findstr /C:"Memory"
用系統內建 systeminfo 過濾記憶體相關行,不需 PowerShell 模組。
輸出範例(systeminfo):
Code
Total Physical Memory: 16,384 MB
Available Physical Memory: 8,192 MB
輸出範例(Get-CimInstance):
Code
TotalMB FreeMB
------- ------
16384 8192
macOS
Code
vm_stat
顯示分頁式記憶體統計:free、active、inactive、wired 等,單位為 page(通常 16KB)。
Code
top -l 1 -s 0 | grep PhysMem
PhysMem 一行顯示實體記憶體使用:used、wired、compressed、unused。
輸出範例(vm_stat 節錄):
Code
Pages free: 125000.
Pages active: 280000.
Pages inactive: 95000.
Pages wired: 120000.
將 page 數 × 4096(bytes)或 × 4(KB)可換算成約略 MB(依架構而定)。