随笔 - 366  文章 - 0  评论 - 101  阅读 - 30万

pgrep

前言

经常要查看进程的信息,包括进程的是否已经消亡,通过pgrep来获得正在被调度的进程的相关信息。pgrep通过匹配其程序名,找到匹配的进程

重要选项

-l 同时显示进程名和PID

-o 当匹配多个进程时,显示进程号最小的那个

-n 当匹配多个进程时,显示进程号最大的那个

注:进程号越大,并不一定意味着进程的启动时间越晚

使用说明

查看指定名称的进程信息

默认只显示PID

   1: [root@master ~]# pgrep ssh
   2: 3686
   3: 7907
   4: 8815
   5: 12874

同时显示PID和ProcessName : –l

   1: [root@master ~]# pgrep -l sshd
   2: 3686 sshd
   3: 7907 sshd
   4: 8815 sshd
   5: 12874 sshd

-o 当匹配多个进程时,显示进程号最小的那个

   1: [root@master ~]# pgrep -l sshd
   2: 3686 sshd
   3: 7907 sshd
   4: 8815 sshd
   5: 12874 sshd
   6: [root@master ~]# pgrep -l -o  sshd
   7: 3686 sshd

-n 当匹配多个进程时,显示进程号最大的那个

   1: [root@master ~]# pgrep -l -n sshd
   2: 12874 sshd

特别说明

1)pgrep相当于 ps –eo pid,cmd | awk ‘{print $1,$2}’ | grep KeyWord

   1: [root@master ~]# ps -eo pid,cmd | awk '{print $1,$2}'  | grep init
   2: 1 init
   3: [root@master ~]# pgrep init
   4: 1

2)如1),pgrep查找的是程序名,不包括其参数

如下,参数里包括要查找的参数,而程序名中不包括,所有没查找到。

   1: [root@master ~]# ps axu | grep name
   2: root     13298  0.0  0.3   5436  1000 pts/4    S    05:52   0:00 sh name.sh
   3: root     13313  0.0  0.2   4876   672 pts/4    R+   05:53   0:00 grep name
   4: [root@master ~]# pgrep name
   5: [root@master ~]# 

总结

pgrep命令用来查找进程的信息,通常会和kill命令来连用,在指定条件下kill问题进程。

posted on   寒星12345678999  阅读(283)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示