Linux中查询运行进程的命令
在Linux中,查询运行进程的命令主要有以下几个:
1. ps 命令
基本用法:
# 查看当前终端下的进程
ps# 查看所有进程
ps -e
ps -A# 查看详细进程信息(最常用)
ps aux
ps -ef# 查看指定用户的进程
ps -u username# 查看指定进程名的进程
ps -ef | grep process_name
常用参数:
a
:显示所有用户的进程u
:显示进程的详细信息x
:显示没有控制终端的进程-e
:显示所有进程-f
:显示完整格式
2. top 命令
实时进程监控:
# 动态显示进程信息
top# 按内存使用排序
top -o %MEM# 按CPU使用排序
top -o %CPU# 指定刷新间隔
top -d 秒数
top交互命令:
P
:按CPU使用率排序M
:按内存使用率排序N
:按PID排序k
:杀死进程q
:退出h
:显示帮助
3. htop 命令
增强版top(需要安装):
# 安装htop
sudo apt install htop # Ubuntu/Debian
sudo yum install htop # CentOS/RHEL# 使用htop
htop
特点:
- 彩色显示
- 鼠标支持
- 直观的进程树
- 更方便的进程操作
4. pstree 命令
以树状结构显示进程:
# 显示进程树
pstree# 显示PID
pstree -p# 显示所有用户的进程
pstree -a
5. pgrep 命令
根据名称查找进程PID:
# 查找进程PID
pgrep process_name# 显示进程名和PID
pgrep -l process_name# 查找指定用户的进程
pgrep -u username process_name
6. pidof 命令
查找运行程序的PID:
pidof process_name
7. 综合使用示例
# 查找nginx进程
ps aux | grep nginx
pgrep nginx
pidof nginx# 查看进程的详细信息
ps -p PID -o pid,ppid,cmd,%mem,%cpu# 监控特定进程
top -p PID1,PID2,PID3# 查看进程打开的文件
lsof -p PID# 查看进程的环境变量
cat /proc/PID/environ | tr '\0' '\n'
8. /proc 文件系统
# 查看进程详细信息
cat /proc/PID/status# 查看进程命令行参数
cat /proc/PID/cmdline# 查看进程打开的文件
ls -l /proc/PID/fd
这些命令可以满足不同的进程查询需求,从简单的进程查看到详细的进程监控都可以覆盖。