-,可組合 (如 -ef)- (如 aux)--sort、--forest 等ps
PID TTY TIME CMD
1234 pts/0 00:00:00 bash
5678 pts/0 00:00:00 ps
ps -ax | less
ps -u pungki
ps aux --sort=-%cpu | head -n 10 # CPU 佔用前 10
ps aux --sort=-%mem | head -n 10 # 內存佔用前 10
ps aux --sort=-%cpu,-%mem | head -n 10 # 綜合排序
ps -C nginx
ps -fC nginx # 全格式顯示
ps -C nginx -o pid,ppid,cmd,%cpu,%mem # 自定義欄位
ps -L -p 1234 # 顯示 PID 1234 的所有線程 (LWP 欄)
ps -axjf
# 或
pstree -p
ps -eo pid,user,args
# 顯示 PID、用戶、完整命令行
ps -U root -u root u
# -U 真實用戶ID,-u 有效用戶ID,u 用戶導向格式
watch -n 1 'ps aux --sort=-%mem,-%cpu | head -20'
watch -n 1 'ps aux -U pungki u --sort=-%mem,-%cpu | head -20'
優於 top/htop:可自定義顯示欄位、過濾用戶、導出 CSV 等。
| 欄位 | 含義 |
|---|---|
| PID | 進程 ID |
| PPID | 父進程 ID |
| %CPU | CPU 佔用百分比 |
| %MEM | 內存佔用百分比 |
| VSZ | 虛擬內存大小 (KB) |
| RSS | 駐留集大小 (KB,實際物理內存) |
| TTY | 控制終端 |
| STAT | 進程狀態 (R/S/D/Z/T 等) |
| START | 啟動時間 |
| TIME | 累計 CPU 時間 |
| COMMAND | 啟動命令 |
掌握 aux --sort、-C、-L、-o 自定義輸出、watch 實時化,即可覆蓋 95% 進程排查場景。ps 普遍預裝,無需安裝,是運維必備核心技能。