Linux 进程管理:从ps到htop
一、ps:基础但够用
常用组合
# 查看所有进程(BSD风格)
ps aux
# 查看所有进程(标准语法)
ps -ef
# 树形结构
ps auxf
ps -ef --forest
# 查看特定进程
ps aux | grep nginx
ps -C nginx -o pid,user,%cpu,%mem,cmd
自定义输出列
ps -eo pid,ppid,user,%cpu,%mem,rss,vsz,stat,start,time,cmd --sort=-%cpu | head -20
关键列说明:
– %cpu:CPU使用率
– %mem:内存使用率
– rss:常驻内存(KB)
– vsz:虚拟内存(KB)
– stat:进程状态(R运行,S睡眠,D不可中断,Z僵尸)

二、top:实时监控
基础操作
# 启动
top
# 常用快捷键
1 # 查看每个CPU核心
P # 按CPU排序
M # 按内存排序
k # 杀掉进程(输入PID和信号)
u # 查看特定用户进程
c # 显示完整命令路径
H # 查看线程
批处理模式(脚本用)
# 一次采集
top -bn1
# 每2秒采集一次,共3次
top -bn3 -d2
# 输出到文件
top -bn1 > /tmp/top_output.txt
三、htop:可视化利器
安装
# Ubuntu/Debian
apt install htop
# CentOS/RHEL
yum install epel-release && yum install htop
# macOS
brew install htop
核心操作
# 启动
htop
# 快捷键
F2 # 设置(颜色、列、显示选项)
F3 # 搜索进程
F4 # 过滤(按字符串)
F5 # 树形视图
F6 # 排序选择
F9 # 杀掉进程
F10 # 退出
# 鼠标点击操作
- 点击表头排序
- 点击进程后按F9杀
- 勾选多个进程批量操作
高级用法
# 显示线程
htop -H
# 显示特定用户
htop -u nginx
# 树形视图启动
htop -t
四、实战技巧
1. 找僵尸进程
ps aux | awk '$8 ~ /Z/ {print $2,$11}'
2. 找最耗内存的进程
ps aux --sort=-%mem | head -10
3. 实时查看网络连接对应进程
# 需要root权限
htop -p $(ss -tlnp | awk -F',' '/LISTEN/{print $2}' | tr -d ' ')
4. 进程资源限制
# 查看进程限制
cat /proc/$(pidof nginx)/limits
# 实时修改(需要root)
prlimit --pid 1234 --nofile=65535:65535
五、选择建议
- 快速查看:
ps aux | grep xxx - 实时监控:
top或htop - 脚本采集:
top -bn1 - 交互分析:
htop(颜色直观,操作方便) - 远程环境:
ps(htop需要安装)
记住:htop能做的,top + 脚本也能做,但htop省了90%的敲键盘时间。生产环境建议先装好htop,省事。
💻 安全运维 / Linux运维 / 渗透测试 技术支持
业务需求可联系博客作者
