Linux使用pgrep命令查找进程ID的方法
pgrep命令直接读取进程文件系统获取进程号,输出纯数字进程号,避免grep命令自身混入结果。支持-f匹配完整命令行、-u按用户查询、-c计数、-o杀最老进程、-x精确匹配及-d自定义分隔符。普通用户仅查自有进程,超级用户可查全部。
说实话,使用 pgrep 来查找进程 ID 比 ps aux | grep 那套组合操作要方便得多——至少不用再担心 grep 自身进程混入结果,还得额外加上 grep -v grep 来清理干扰。更关键的是,pgrep 直接读取 procfs 文件系统,不启动新进程,因此完全不会有干扰项。默认输出就是纯数字 PID,每行一个,拿到手后可以直接传给 kill 或 ps 等命令。

直接使用 pgrep 就能干净地获取 PID,无需再写 ps aux | grep 并额外过滤,也避免了 grep 自身进程混入结果的问题。
为什么 pgrep nginx 比 ps aux | grep nginx 更可靠
后者的老毛病在于会把 grep nginx 这一行也当作匹配项输出,必须额外加上 grep -v grep 才能剔除;而 pgrep 直接从 procfs 读取进程信息,不创建新进程,天然没有干扰。此外,还有几个细节值得留意:
- 默认只输出纯数字 PID,每行一个,可直接通过管道传递给
kill、ps等命令 - 内核限制进程名最大显示前 15 个字符,
ps aux显示不全,但pgrep的-f选项可以绕过这个限制 - 不存在“意外匹配”:比如查询
bash,pgrep bash不会匹配到bashful或rbash(除非加上-i或使用正则)
pgrep -f 匹配完整命令行才是日常刚需
许多服务启动时进程名仍然是 python 或 java,真正区分它们要靠参数。此时只查询进程名根本无法找到目标。而 pgrep -f 能够匹配完整的命令行,在这种场景下才是真正的利器:
pgrep -f "python manage.py runserver"→ 找到 Django 开发服务器pgrep -f "java.*-jar.*app.jar"→ 匹配带 jar 参数的 Java 进程pgrep -f "nginx: worker process"→ 区分 master 进程和 worker 进程(注意空格和冒号要写全)- 不使用
-f时,pgrep python可能返回几十个无关的 Python 进程
按用户、精确名称、数量统计等操作,别硬记参数
实际运维中高频组合就那么几个,记住应用场景比死背选项更有效:
- 查询某个用户的全部相关进程:
pgrep -u www-data nginx - 确认是否只有一个实例在运行:
pgrep -c nginx返回1才放心 - 只想杀掉最旧的那个(比如重启后遗留的旧进程):
pgrep -o nginx | xargs kill - 确保完全匹配进程名,避免误伤:
pgrep -x sshd不会匹配到sshd_config或ssh-agent - 多个关键词一起查询:
pgrep -f "redis|mysql"(注意 shell 会解释管道符,需要加引号)
容易被忽略的细节:分隔符、空格、权限
pgrep 输出默认以换行分隔,但在脚本里拼接命令时可能需要逗号或空格——这时候 -d 就不能省略:
pgrep -d, -f "node server.js"→ 输出1234,5678,方便嵌入到kill命令中- 命令行里有空格或特殊字符(如
./my script.sh),必须用双引号包裹整个模式,单引号不行(shell 不会展开变量) - 普通用户只能查看自己的进程,
pgrep -u root必须用 root 权限执行,否则静默返回空 pgrep -P $PID查询子进程时,如果父进程已退出,结果为空——不是命令错误,而是进程树已经改变
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
宏基E1-472G设置BIOS从U盘启动安装Win7系统
宏碁笔记本凭借出色的性价比,在同配置下常比联想便宜一两千元,因此深受学生用户青睐。此前有用户反映宏碁E1-472G无法通过U盘启动,排查后发现是BIOS设置不当所致。下面展示这款笔记本的标签图: 解决此问题的第一步是准备一个制作好的U盘启动盘(制作方法网上教程丰富,此处不再赘述)。核心在于BIOS中
asupport.exe进程是什么及信息查询方法
今天我们来聊聊系统进程列表中偶尔会出现的一个进程——asupport exe(有时也显示为 asupport)。它归属于趋势科技(Trend Micro)的 ActiveSupport 组件,简单来说,就是趋势网络安全套装中用于收集本机信息的一个辅助工具进程。 那么,这个进程到底是不是“危险分子”呢
Win11记事本原生表格上手体验 支持Markdown媲美Word
Windows Latest 近日发布了一份 Windows 11 记事本最新版(版本 11 2510 6 0)的实测体验报告,重点介绍了其新增的原生表格创建与编辑功能。那么这项功能实际体验如何?直接给出结论:与 Word 中繁琐的表格操作不同,Win11 记事本的表格设计非常直观。用户完全可以像编
Win11 23H2可选更新KB5070312修复文件管理器点击失灵
近日,科技媒体 NeoWin 报道了一则令众多 Windows 用户备受关注的消息:微软已正式向 Windows 11 23H2 系统推送了 11 月可选更新 KB5070312,安装后系统版本号提升至 Build 22631 6276。作为一项“C 版本更新”,该更新并非强制推送,而是类似于一次“
avgserv9.exe进程介绍:是什么及功能详解
先来聊聊这个经常在任务管理器里出现的进程——avgserv9 exe。它其实是AVG杀毒软件中不可或缺的一个组件,准确来说,是AVG AntiVirus安装后自动附带的关键后台进程。avgserv9 exe的主要职责是帮助你的电脑抵御来自互联网的各种威胁,比如木马、蠕虫这类恶意程序。对于普通用户而言
- 热门数据榜
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10
相关攻略
2026-07-17 11:31
2026-07-17 11:31
2026-07-17 11:30
2026-07-17 11:29
2026-07-17 11:28
2026-07-17 11:26
2026-07-17 11:26
2026-07-17 10:55
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程

