参考: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. docker build时改变docker中的apt源

    # Ali apt-get source.list RUN mv /etc/apt/sources.list /etc/apt/sources.list.bak && \ echo & ...

  2. RobotFramework:查询条件为最近一个月的数据(2019-07-09 00:00:00.000 到 2019-08-07 23:59:59.999)

    自动化测试中遇到,默认查询条件为最近一个月,所以起始时间就应该为(2019-07-09 00:00:00.000 到  2019-08-07 23:59:59.999) test ${current_ ...

  3. 安装Windows和Ubuntu双系统2

    安装Windows和Ubuntu双系统 0.552016.12.10 15:54:41字数 2101阅读 6644 这几天开始动手做毕设啦,打算好好过把Linux瘾,接下来便是这两天我在联想电脑上安装 ...

  4. 03.linux入门命令

    1.linux命令的格式 命令 [选项] [参数] eg: ls ls -l ls -l /home 注: a.选项与参数不一定存在 b.选项用 "-" 来指明 c.命令,选项,参 ...

  5. 剪切板工具:Ditto

    DittoClipboard manager; 剪贴板工具https://ditto-cp.sourceforge.io/ 参考资料 https://www.liutf.com/posts/37207 ...

  6. heroku 的用法

    heroku 安装cli npm install -g heroku ubuntu 下 sudo snap install --classic heroku 安装 npm init -y heroku ...

  7. PAT(A) 1148 Werewolf - Simple Version(Java)逻辑推理

    题目链接:1148 Werewolf - Simple Version (20 point(s)) Description Werewolf(狼人杀) is a game in which the p ...

  8. 【模拟】Clock

    Clock 题目描述 wls有一个钟表,当前钟表指向了某一个时间.又有一些很重要的时刻,wls想要在钟表上复现这些时间(并不需要依次复现).我们可以顺时针转动秒针,也可以逆时针转动秒针,分针和时针都会 ...

  9. VK Cup 2017 - Round 1 (CDE)

    771C Bear and Tree Jumps 大意: 给定树,每步能走到距离不超过$k$的任意点,记$f(s,t)$为$s$到$t$的最少步数,求$\sum\limits_{s<t}f(s, ...

  10. Code First 下自动更新数据库结构(Automatic Migrations)

    示例 Web.config <?xml version="1.0" encoding="utf-8"?> <configuration> ...