参考:Linux pgrep Command Tutorial for Beginners (10 Examples)

Linux命令——ps、pstree

bash基础——grep、基本正则表达式、扩展正则表达式、fgrep

简介

这个命令也是用来查看进程(或线程)信息的。可以理解成是ps+grep

举例

根据用户ID,用户名查找进程(或线程)

使用-u参数。

这一点要称赞pgrep,不像ps(-u接uid,-U接username),-u可以包含uid和username两种情况

[root@localhost lib]# pgrep -u  -d:
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
[root@localhost lib]# pgrep -u root -d:
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

ps的-G好很多,可以接gid和groupname

自定义分隔符

上面的例子我使用了-d参数,这个就是用来自定义分隔符的,默认是换行符,所以默认情况的输出会很多行,如下

[root@localhost lib]# pgrep -u root 

为了输出美观,第一个例子我更改了分隔符

显示进程(或线程)名字

上面那个例子,虽然把root的进程(或线程)都找到了,但是只有ID,太不方便了。

使用-l参数,可以把进程(或线程)名字显示出来。

[root@localhost lib]# pgrep -u root -l
systemd
kthreadd
ksoftirqd/
kworker/:0H
migration/
rcu_bh
rcu_sched
lru-add-drain
watchdog/
watchdog/
migration/
ksoftirqd/
kworker/:0H
watchdog/
migration/
ksoftirqd/
kworker/:0H
watchdog/
migration/
ksoftirqd/
kworker/:0H
watchdog/
migration/
ksoftirqd/
kworker/:
kworker/:0H
watchdog/
migration/
ksoftirqd/
kworker/:0H
watchdog/
migration/
ksoftirqd/
kworker/:
kworker/:0H
watchdog/
migration/
ksoftirqd/
kworker/:
kworker/:0H
kdevtmpfs
netns
khungtaskd
writeback
kintegrityd
bioset
kblockd
md
edac-poller
kworker/:
kswapd0
ksmd
khugepaged
crypto
kthrotld
kworker/u256:
kmpath_rdacd
kaluad
kpsmoused
kworker/:
ipv6_addrconf
deferwq
kworker/:
kauditd
kworker/:
ata_sff
mpt_poll_0
mpt/
scsi_eh_0
scsi_tmf_0
kworker/u256:
scsi_eh_1
scsi_tmf_1
scsi_eh_2
scsi_tmf_2
ttm_swap
irq/-vmwgfx
kworker/:
kworker/:
kworker/:
kdmflush
bioset
kdmflush
bioset
bioset
xfsalloc
xfs_mru_cache
xfs-buf/dm-
xfs-data/dm-
xfs-conv/dm-
xfs-cil/dm-
xfs-reclaim/dm-
xfs-log/dm-
xfs-eofblocks/d
xfsaild/dm-
kworker/:1H
systemd-journal
lvmetad
systemd-udevd
nfit
kworker/:
kvm-irqfd-clean
xfs-buf/sda1
xfs-data/sda1
xfs-conv/sda1
xfs-cil/sda1
xfs-reclaim/sda
xfs-log/sda1
xfs-eofblocks/s
xfsaild/sda1
kdmflush
bioset
kworker/:
xfs-buf/dm-
xfs-data/dm-
xfs-conv/dm-
xfs-cil/dm-
xfs-reclaim/dm-
xfs-log/dm-
xfs-eofblocks/d
xfsaild/dm-
auditd
systemd-logind
irqbalance
crond
ksmtuned
login
kworker/:1H
kworker/:1H
dhclient
rsyslogd
tuned
sshd
kworker/:
master
kworker/:1H
bash
kworker/:1H
kworker/:1H
sshd
bash
kworker/:1H
kworker/:1H
kworker/:
kworker/:
kworker/:
kworker/:
kworker/:
sleep

显示命令行命

使用-a参数还可以把这个进程(或线程)启动时的命令行显示出来

pstree也是使用-a显式命令行

[root@localhost lib]# pgrep -u root -a
/usr/lib/systemd/systemd --switched-root --system --deserialize
kthreadd
ksoftirqd/
kworker/:0H
migration/
rcu_bh
rcu_sched
lru-add-drain
watchdog/
watchdog/
migration/
ksoftirqd/
kworker/:0H
watchdog/
migration/
ksoftirqd/
kworker/:0H
watchdog/
migration/
ksoftirqd/
kworker/:0H
watchdog/
migration/
ksoftirqd/
kworker/:
kworker/:0H
watchdog/
migration/
ksoftirqd/
kworker/:0H
watchdog/
migration/
ksoftirqd/
kworker/:
kworker/:0H
watchdog/
migration/
ksoftirqd/
kworker/:
kworker/:0H
kdevtmpfs
netns
khungtaskd
writeback
kintegrityd
bioset
kblockd
md
edac-poller
kworker/:
kswapd0
ksmd
khugepaged
crypto
kthrotld
kworker/u256:
kmpath_rdacd
kaluad
kpsmoused
kworker/:
ipv6_addrconf
deferwq
kworker/:
kauditd
kworker/:
ata_sff
mpt_poll_0
mpt/
scsi_eh_0
scsi_tmf_0
kworker/u256:
scsi_eh_1
scsi_tmf_1
scsi_eh_2
scsi_tmf_2
ttm_swap
irq/-vmwgfx
kworker/:
kworker/:
kworker/:
kdmflush
bioset
kdmflush
bioset
bioset
xfsalloc
xfs_mru_cache
xfs-buf/dm-
xfs-data/dm-
xfs-conv/dm-
xfs-cil/dm-
xfs-reclaim/dm-
xfs-log/dm-
xfs-eofblocks/d
xfsaild/dm-
kworker/:1H
/usr/lib/systemd/systemd-journald
/usr/sbin/lvmetad -f
/usr/lib/systemd/systemd-udevd
nfit
kworker/:
kvm-irqfd-clean
xfs-buf/sda1
xfs-data/sda1
xfs-conv/sda1
xfs-cil/sda1
xfs-reclaim/sda
xfs-log/sda1
xfs-eofblocks/s
xfsaild/sda1
kdmflush
bioset
kworker/:
xfs-buf/dm-
xfs-data/dm-
xfs-conv/dm-
xfs-cil/dm-
xfs-reclaim/dm-
xfs-log/dm-
xfs-eofblocks/d
xfsaild/dm-
/sbin/auditd
/usr/lib/systemd/systemd-logind
/usr/sbin/irqbalance --foreground
/usr/sbin/crond -n
/bin/bash /usr/sbin/ksmtuned
login -- root
kworker/:1H
kworker/:1H
/sbin/dhclient - -q -lf /var/lib/dhclient/dhclient-290edd36-584d-4eb9-b155-48b899711cf4-eth0.lease -pf /var/run/dhclient-eth0.pid eth0
/usr/sbin/rsyslogd -n
/usr/bin/python -Es /usr/sbin/tuned -l -P
/usr/sbin/sshd -D
kworker/:
/usr/libexec/postfix/master -w
kworker/:1H
-bash
kworker/:1H
kworker/:1H
sshd: root@pts/
-bash
kworker/:1H
kworker/:1H
kworker/:
kworker/:
kworker/:
kworker/:
kworker/:
sleep

找出满足条件的最新/最老的一个进程(或线程)

比如root用户,他可能启动了很多进程(或线程),那么最近最新的是哪一个,使用-n(new)参数

[root@localhost lib]# pgrep -u root -a -n
sleep

如果找最老的那个进程(或线程),使用-o(old)参数(这个不是initd就是systemd)

[root@localhost lib]# pgrep -u root -a -o
/usr/lib/systemd/systemd --switched-root --system --deserialize

统计满足条件进程(线程)的个数

使用参数-c

pstree的-c是展开折叠

[root@localhost lib]# pgrep -u root  -c

Linux命令——pgrep的更多相关文章

  1. 最有用的Linux命令行使用技巧集锦

    最近在Quora上看到一个问答题目,关于在高效率Linux用户节省时间Tips.将该题目的回答进行学习总结,加上自己的一些经验,记录如下,方便自己和大家参考. 下面介绍的都是一些命令行工具,这些工具在 ...

  2. 运维必须掌握的150个Linux命令

    线上查询及帮助命令(1个)man 目录操作命令(6个)ls tree pwd mkdir rmdir cd 文件操作命令(7个)touch cp mv rm ln find rename 文件查看及处 ...

  3. Linux 命令行

    Linux 命令笔记 一.目录/文件 1.1 目录文件日常操作 . -> 当前目录 .. -> 上一级目录 .file/.dir -> 隐藏文件/文件夹 [ls] 查看指定目录文件 ...

  4. linux 命令中英文对照,收集

    linux 命令中英文对照,收集   linux 命令英文全文 Is Linux CLI case-sensitive? The answer is, yes. If you try to run L ...

  5. 《Linux命令学习手册》系列分享专栏

    <Linux命令学习手册>系列分享专栏 <Linux命令学习手册>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/207 ...

  6. Linux命令——pr

    参考:Linux命令——column 前言 接触这个命令的初衷是我想把一个很长的单列输出设置成多列输出,奈何column的分列输出机制太智障,直到我发现了pr 参数 pr -# 输出指定的列数. -t ...

  7. 有效管理进程的几个linux命令

    一般来说,应用程序进程的生命周期有三种主要状态:启动.运行和停止.如果我们想成为称职的管理员,每个状态都可以而且应该得到认真的管理.这八个命令可用于管理进程的整个生命周期. 启动进程 启动进程的最简单 ...

  8. (4)Linux命令分类汇总(13~16)

    Linux命令分类汇总(13~16) (十三)系统管理与性能监视命令(9个) 79       chkconfig 管理Linux系统开机启动项. 80       vmstat 虚拟内存统计. 81 ...

  9. Linux命令(持续更新)

    1. tail 命令    tail 命令可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件. tail  -f  filename 会把 filename 文件里的最尾部的内 ...

随机推荐

  1. C#DbHelperOleDb,Access数据库帮助类 (转)

    /// <summary>/// 编 码 人:苏飞/// 联系方式:361983679  /// 更新网站:[url=http://www.sufeinet.com/thread-655- ...

  2. 【docker 镜像源】解决quay.io和gcr.io国内无法访问的问题

    该问题容易导致image pull back off 错误,应当换源: 微软: https://yeasy.gitbooks.io/docker_practice/install/mirror.htm ...

  3. Nginx日志挂载目录为nfs文件服务器时开机无法自启动的问题解决

    为了方便收集查看日志把nginx日志输出至nfs文件服务器,nfs文件服务器使用autofs自动挂载,nginx和autofs都使用systemctl设置了开机自启动. 但是在重启主机的时候nginx ...

  4. Appium移动自动化测试-----(六)3.AppiumDesktop功能描述

    一般功能 这些能力跨越多个驱动因素. 能力 描述 值 automationName 使用哪个自动化引擎 Appium(默认)或Selendroid或者UiAutomator2或者Espresso对于A ...

  5. [bzoj4240]有趣的家庭菜园_树状数组

    有趣的家庭菜园 题目链接:https://lydsy.com/JudgeOnline/problem.php?id=4240 数据范围:略. 题解: 第一步比较简单,只需要排序之后,每个数不是在左边就 ...

  6. 01 web概念概述

    1.JavaWeb: 使用Java语言开发基于互联网的项目 2.软件架构:(1) C/S: Client/Server 客户端/服务器端在用户本地有一个客户端程序,在远程有一个服务器端程序如:QQ,迅 ...

  7. java微服务的统一配置中心

    为了更好的管理应用的配置,也为了不用每次更改配置都重启应用,我们可以使用配置中心 关于eureka的服务注册和rabbitMQ的安装使用(自动更新配置需要用到rabbitMQ)这里不赘述,只关注配置中 ...

  8. Python之reduce函数使用示例

    #!/usr/bin/env python # -*- coding:utf8 -*- '''reduce:处理一个序列,然后把序列进行合并操作''' ###在python中没有reduce函数,所以 ...

  9. Python 重点知识整理(基于Python学习手册第四版)

    字节型编译 如果Python在系统中有写的权限,当程序运行时Python会把源码编译成字节码(与系统环境无关)存在一个.pyc扩展名文件中,如果没有修改源码而重新运行程序时,不会进行编译的步骤而使用字 ...

  10. golang 切片使用注意事项

    // list 默认值为nil,可以直接append值,有值后json后为数组对象,但如果没有初始化空间的话,json编码后为null var list []*Pepole // list 初始化空间 ...