Linux如何快速查找进程?

ps 命令(最常用)

作用:查看当前进程快照
常用组合

ps -e | grep 关键词      # 模糊匹配进程名(如查找Nginx)
ps -ef | grep 关键词     # 显示完整进程信息(含父进程PID)
ps -eo pid,comm          # 仅输出PID和进程名(简洁模式)

示例

$ ps -e | grep nginx
  1234 nginx
  5678 nginx-worker

特点

  • -e 显示所有进程,-f 显示完整格式(含启动命令)
  • comm 列显示进程名(截断至15字符),args 列显示完整命令

top / htop 命令(动态监控)

作用:实时查看进程资源占用
操作

top                # 默认启动,按 `Shift+P` 按CPU排序
htop               # 更友好界面(需安装:`sudo apt install htop`)

显示字段

  • COMMAND:进程名称(htop 中可展开完整路径)
  • 支持交互式搜索(htopF3 输入关键词)

pgrep 命令(精准检索)

作用:直接通过进程名查找PID
语法

pgrep -l 进程名      # 返回PID和进程名
pgrep -a 进程名      # 显示完整命令行

示例

$ pgrep -l firefox
  8895 firefox

优势

  • 避免grep自身进程干扰(自动过滤grep命令)
  • 支持正则表达式(如 pgrep '^nginx$' 精确匹配)

/proc 文件系统(底层查看)

原理:每个进程在 /proc/PID/ 下有详细信息
操作

cat /proc/1234/comm   # 查看PID=1234的进程名(内核级名称)
cat /proc/1234/cmdline # 查看启动完整命令(含参数)

适用场景

  • 脚本中精确获取进程名
  • 分析进程启动参数

pstree 命令(树形结构)

作用:以树状图显示进程父子关系
示例

pstree -p | grep nginx  # 显示nginx及其子进程

输出示例

nginx(1234)─┬─nginx(5678)
            └─php-fpm(9012)

组合命令技巧

  • 统计进程数量
    ps -e | grep -c nginx
  • 查看进程完整路径
    ls -l /proc/1234/exe

注意事项

  1. 权限要求
    • 普通用户仅查看自身进程
    • 系统级进程需 sudo 提权(如 sudo ps -ef
  2. 名称截断问题
    ps 默认截断进程名,使用 ps -ewwhtop 查看完整命令
  3. 进程名 vs 命令名
    • 进程名(comm):内核记录的短名称(不可修改)
    • 命令行(cmdline):启动时传递的参数(可能含路径)

总结建议

  • 快速检索 → 用 pgrepps -e | grep
  • 实时监控 → 用 htop
  • 分析进程关系 → 用 pstree
  • 脚本处理 → 用 /procpgrep

引用说明基于Linux内核文档(kernel.org/docs)及Ubuntu、CentOS官方手册,命令兼容主流Linux发行版(Debian、RHEL、Arch等),实践环境为Linux 5.15+,建议读者通过 man [命令] 查阅手册获取最新细节。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6120.html

(0)
酷番叔酷番叔
上一篇 2025年7月2日 17:10
下一篇 2025年7月2日 17:26

相关推荐

  • Linux如何关闭tty4终端?

    在Linux系统中,tty(Teletype)是文本模式的虚拟控制台,tty1至tty6是默认提供的6个文本终端,其中tty4通常作为备用终端存在,若需关闭tty4,本质上是禁用或停止其对应的getty(getty)服务,该服务负责监听终端并处理用户登录请求,以下是具体操作步骤及注意事项,理解tty4与gett……

    2025年10月8日
    8200
  • Linux如何创建头文件?

    在Linux环境下开发程序时,头文件(Header File,以.h为扩展名)是模块化编程的核心组件,它用于声明函数、宏、数据结构、全局变量等,为源文件(.c文件)提供接口规范,创建头文件需遵循特定语法和规范,以确保代码的可移植性、可维护性和避免重复包含问题,以下是Linux环境下创建头文件的详细步骤和注意事项……

    2025年9月19日
    9800
  • Linux下如何解压.tar.bz2文件?

    在Linux系统中,.tar.bz2文件是一种常见的压缩格式,它结合了tar工具的打包功能和bzip2工具的压缩功能,通常用于将多个文件或目录打包并压缩,以减少存储空间占用或便于传输,解压.tar.bz2文件需要使用tar命令,并通过特定选项处理bzip2压缩层,本文将详细介绍Linux下解压.tar.bz2文……

    2025年8月28日
    11400
  • Linux设置IP地址如何永久生效?

    通用原则临时 vs 永久配置ip addr add 或 ifconfig 命令:临时生效(重启失效),修改配置文件或使用工具:永久保存,操作前备份: sudo cp /etc/network/interfaces /etc/network/interfaces.bak # Debian/Ubuntusudo c……

    2025年6月28日
    14200
  • 如何轻松添加官方主线内核仓库?

    为什么需要升级 Linux 内核?升级内核可获取以下优势:安全增强:修复已知漏洞(如 CVE 漏洞)硬件支持:支持新型 CPU、显卡、网卡等设备性能优化:提升文件系统、网络栈或资源调度效率新特性:如 eBPF、容器技术改进等风险提示:⚠️ 操作前必须备份重要数据⚠️ 建议在测试环境验证后再应用于生产环境⚠️ 保……

    2025年7月19日
    13700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信