首页/系统/Linux 运维命令速查/pgrep 按条件找进程
本包目录(613 条)
文件与目录76 条文本处理77 条网络命令82 条
进程与作业69 条
磁盘与文件系统51 条用户与权限44 条日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

pgrep 按条件找进程

按名称/命令行/用户查 PID,替代 ps | grep 组合;-f 匹配完整命令行、-a 同时显示命令、-u 按用户。

Linux 运维命令速查系统更新于 2026-10-12
用途查找进程 PID
语法pgrep [选项] 模式
常用-f 全命令行 -a 显示命令 -u 用户 -x 精确匹配 -l 显示名称

常用示例

常用示例
pgrep -a nginx
pgrep -u www-data -a | head
pgrep -f 'python.*worker'          # 命令行级匹配
pgrep -x sshd                      # 精确进程名
pgrep -c nginx                     # 数量(-c count)
ss -tlnp | grep 8080 | pgrep -f .  # 组合套路示例
惯例:脚本里用 pgrep 拿到 PID 列表再逐个处理,别用 ps aux | grep | awk 拼脆弱管道。

易错点

  • 进程名匹配的是 comm(内核限制 15 字符,长名被截断):长进程名用 -f 全命令行匹配
  • pgrep 只匹配不输出多余信息,脚本里注意区分退出码:1 = 没找到(不是出错)

数据来源与参考

  • man 1 pgrep(procps-ng 手册)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌