Ubuntu 22.04 中查看指定进程 ID(PID)状态的五种方法

在 Ubuntu 22.04 中查看指定进程 ID(PID)为 3217 的状态,可以使用以下方法:

1. 使用 ps 命令(最常用)

bash 复制代码
ps -p 3217 -o pid,user,comm,state,start_time,time,cmd
  • 输出说明
    • STATE:进程状态代码(R=运行, S=睡眠, D=不可中断睡眠, Z=僵尸, T=停止等)
    • START:进程启动时间
    • TIME:累计 CPU 时间
    • CMD:完整命令行

2. 查看 /proc 文件系统(最详细)

bash 复制代码
cat /proc/3217/status

这将显示详细的进程信息,包括:

  • State:当前状态(R/S/D/Z/T)
  • PPid:父进程 ID
  • Uid/Gid:用户/组信息
  • 内存使用情况
  • 信号处理状态

3. 使用 top 命令(交互式查看)

bash 复制代码
top -p 3217
  • 实时显示进程的 CPU、内存使用情况
  • q 退出

4. 使用 htop(增强版 top)

bash 复制代码
htop -p 3217

(需先安装:sudo apt install htop

  • 彩色显示,更直观的进程树视图

5. 检查进程状态标志

bash 复制代码
ps -o pid,state,cmd -p 3217
  • 简洁显示进程状态代码:
    • R (running/runnable)
    • S (interruptible sleep)
    • D (uninterruptible sleep)
    • Z (zombie)
    • T (stopped)
    • t (tracing stop)
    • X (dead)

常见状态说明:

状态 含义
R 正在运行或可运行(在运行队列中)
S 可中断的睡眠(等待事件完成)
D 不可中断的睡眠(通常等待 I/O)
Z 僵尸进程(已终止但未被父进程回收)
T 已停止(通常由作业控制信号导致)

提示:如果进程不存在,所有命令都会返回错误提示 No such process

相关推荐
Trouvaille ~2 分钟前
【C++篇】让错误被温柔对待(下):异常高级特性与最佳实践
运维·开发语言·c++·异常·raii·编程实践·基础入门
霜!!4 分钟前
openssh升级
linux·运维·服务器
草莓熊Lotso5 分钟前
2025年12月远程协作平台全景评测:智能连接时代的效率革命
运维·服务器·数据库
Rhys..9 分钟前
Jenkins配置GitHub token教程
运维·github·jenkins·ci
小趴菜不能喝17 分钟前
Docker Swarm
运维·docker·容器
阿洛学长19 分钟前
解决服务器 4000端口占用方案
运维·服务器
stella·22 分钟前
服务器割接,我所学习到的内容。
linux·运维·服务器·学习·shell·割接
胡萝卜3.026 分钟前
Linux包管理器:高效安装软件的秘诀
linux·运维·服务器·人工智能·linux包管理·yum教程·apt入门
I · T · LUCKYBOOM30 分钟前
iptables 防火墙(二)
linux·运维·服务器·网络·安全·centos
带鱼吃猫36 分钟前
Linux 守护进程:会话、终端与后台运行的底层逻辑
linux·运维·服务器