# Linux怎么查看正在運行進程
## 前言
在Linux系統管理和故障排查過程中,查看正在運行的進程是一項基礎且關鍵的操作。無論是檢查服務狀態、分析系統資源占用,還是終止異常進程,都需要掌握進程查看的相關命令。本文將詳細介紹Linux下常用的進程查看工具及技巧。
---
## 一、基礎命令介紹
### 1. `ps` 命令
`ps` (Process Status) 是最基礎的進程查看工具,提供當前用戶的進程快照。
#### 常用組合:
```bash
ps aux # 查看所有用戶的所有進程(BSD風格)
ps -ef # 完整格式列表(System V風格)
ps -e --forest # 顯示進程樹結構
USER: 進程所有者PID: 進程ID%CPU: CPU占用率%MEM: 內存占用率COMMAND: 啟動命令top 命令實時動態查看系統進程狀態,類似Windows的任務管理器。
Shift + P : 按CPU排序
Shift + M : 按內存排序
q : 退出
htop 增強版需要安裝的交互式進程查看器(sudo apt install htop):
htop
pgrep 快速查找通過名稱查找進程ID:
pgrep -l nginx # 查找nginx相關進程
pstree 可視化進程樹顯示進程間的層級關系:
pstree -p # 顯示PID
pstree -a # 顯示完整命令
ps -u root # 查看root用戶的進程
top -u mysql # 監控mysql用戶進程
ps aux --sort=-%cpu | head -10 # CPU占用TOP10
ps aux --sort=-%mem | head -5 # 內存占用TOP5
查找Java進程并計算數量:
ps -ef | grep java | grep -v grep | wc -l
cat /proc/[PID]/environ | tr '\0' '\n'
lsof -p [PID]
ls -l /proc/[PID]/cwd
glances 全能監控安裝后可通過Web界面查看:
glances
glances -w # 啟動Web服務
nmon 性能分析nmon
(按c顯示CPU,m顯示內存)
top → 記下PID → strace -p [PID] → 分析系統調用
systemctl status nginx || ps aux | grep nginx
ps -A -ostat,ppid | grep -e '[zZ]' # 查找僵尸進程
kill -9 [PPID] # 終止父進程
| 命令 | 實時性 | 交互性 | 信息量 | 適用場景 |
|---|---|---|---|---|
ps |
靜態 | 無 | 中等 | 快速快照 |
top |
動態 | 有 | 詳細 | 實時監控 |
htop |
動態 | 強 | 豐富 | 交互式管理 |
pstree |
靜態 | 無 | 結構 | 分析進程關系 |
/proc 文件系統包含實時進程信息watch命令:
watch -n 1 'ps aux --sort=-%mem | head -10'
掌握Linux進程查看技巧是系統管理的必備技能。建議根據實際需求組合使用這些工具:
- 快速檢查用ps
- 實時監控用top/htop
- 深度分析結合/proc和strace
通過持續實踐,您將能快速定位各種進程相關問題。 “`
注:本文實際約1500字,可根據需要調整章節深度。建議保存為.md文件后用Markdown閱讀器查看格式效果。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。