转载请注明出处:https://www.cnblogs.com/kelamoyujuzhen/p/9814883.html

ps

简介

ps(processes status)是Unix / Linux上的一个实用程序,用于查看系统上正在运行的进程的信息。ps命令默认安装,即使最小化安装也会有这个命令。ps命令从/proc文件系统中的虚拟文件中读取信息。 ps命令是系统管理的重要工具之一,专门用于进程监视,以帮助程序开发了解Linux系统上的最新情况。
请注意,ps生成带有标题行的输出,表示每列信息的含义。

用法演示

ps aux

a = show processes for all users 与terminal相关的进程
u = display the process's user/owner
x = also show you  (runner of the ps command, root in this case) all processes, not just ones attached to a terminal. This will include processes such as services like crond, upowerd, etc. 除了与终端相关的进程,还显示与terminal无关的进程

由于加上x后输出信息较多,示例没有加x

[root@localhost ~]# ps au
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 0.0 0.0 tty1 Ss+ : : /sbin/mingetty /dev/tty1
root 0.0 0.0 tty2 Ss+ : : /sbin/mingetty /dev/tty2
root 0.0 0.0 tty3 Ss+ : : /sbin/mingetty /dev/tty3
root 0.0 0.0 tty4 Ss+ : : /sbin/mingetty /dev/tty4
root 0.0 0.0 tty5 Ss+ : : /sbin/mingetty /dev/tty5
root 0.0 0.0 tty6 Ss+ : : /sbin/mingetty /dev/tty6
root 0.0 0.0 pts/ Ss : : -bash
root 0.0 0.0 pts/ R+ : : ps au
  • USER:该 process 属于哪个用户
  • PID :该 process 的PID
  • %CPU:该 process 使用掉的 CPU 资源百分比;
  • %MEM:该 process 所占用的实体内存百分比;
  • VSZ :该 process 使用掉的虚拟内存量 (Kbytes)
  • RSS :该 process 占用的固定的内存量 (Kbytes)
  • TTY :该 process 是在那个终端机上面运行,若与终端机无关则显示 ?,另外, tty1-tty6 是本机上面的登陆者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。
  • STAT:该程序目前的状态,状态显示与 ps -l 的 S 旗标相同 (R/S/T/Z)
  • START:该 process 被触发启动的时间;

R:running
S:interruptable sleeping 可中断睡眠
D: uninterruptable sleeping不可中断睡眠
T: stopped
Z: zombie僵尸进程。通常,造成僵尸程序的成因是因为该程序应该已经运行完毕,或者是因故应该要终止了, 但是该程序的父程序却无法完整的将该程序结束掉,而造成那个程序一直存在内存当中。 如果你发现在某个程序的 CMD 后面还接上 <defunct> 时,就代表该程序是僵尸程序啦,例如:

apache    0.0  0.9   ?   Z  :   : /usr/sbin/httpd <defunct>

通常僵尸进程交由init或者systemd进程处理,如果init或者systemd也干不死,那只能reboot了。

+: 前台进程
l: 多线程进程
N:低优先级进程
<:高优先级进程
s: session leader

  • TIME :该 process 实际使用 CPU 运行的时间。
  • COMMAND:该程序的实际命令为何?

ps -f 或者 -F可以多显示几列。其中-F显示的能更多些

[root@localhost ~]# ps -f
UID PID PPID C STIME TTY TIME CMD
root : pts/ :: -bash
root : pts/ :: ps -f
[root@localhost ~]# ps -F
UID PID PPID C SZ RSS PSR STIME TTY TIME CMD
root : pts/ :: -bash
root : pts/ :: ps -F

使用-L还可以显示NLWP (number of threads) 和 LWP (thread ID) 列

[root@localhost ~]# ps -L
PID LWP TTY TIME CMD
pts/ :: bash
pts/ :: ps
[root@localhost ~]# ps -Lf
UID PID PPID LWP C NLWP STIME TTY TIME CMD
root : pts/ :: -bash
root : pts/ :: ps -Lf
[root@localhost ~]# ps -LF
UID PID PPID LWP C NLWP SZ RSS PSR STIME TTY TIME CMD
root : pts/ :: -bash
root : pts/ :: ps -LF

显示Linux系统下所有活跃进程

ps -A 或 ps -e

[root@localhost proc]# ps -e
PID TTY TIME CMD
? :: systemd
? :: kthreadd
? :: ksoftirqd/
? :: kworker/:0H
? :: kworker/u256:
? :: migration/
? :: rcu_bh
? :: rcu_sched
? :: lru-add-drain
? :: watchdog/
? :: watchdog/
? :: migration/
? :: ksoftirqd/
? :: kworker/:0H
? :: watchdog/
? :: migration/
? :: ksoftirqd/
? :: kworker/:0H
? :: watchdog/
? :: migration/
? :: ksoftirqd/
? :: kworker/:0H
? :: kdevtmpfs
? :: netns
? :: khungtaskd
? :: writeback
? :: kintegrityd
? :: bioset
? :: kblockd
? :: md
? :: edac-poller
? :: kworker/:
? :: kswapd0
? :: ksmd
? :: khugepaged
? :: crypto
? :: kthrotld
? :: kmpath_rdacd
? :: kaluad
? :: kpsmoused
? :: kworker/:
? :: ipv6_addrconf
? :: deferwq
? :: kauditd
? :: mpt_poll_0
? :: ata_sff
? :: 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/:
? :: 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
? :: 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
? :: xfs-buf/dm-
? :: xfs-data/dm-
? :: xfs-conv/dm-
? :: xfs-cil/dm-
? :: xfs-reclaim/dm-
? :: xfs-log/dm-
? :: xfs-eofblocks/d
? :: xfsaild/dm-
? :: auditd
? :: dbus-daemon
? :: polkitd
? :: irqbalance
? :: systemd-logind
? :: crond
? :: login
? :: firewalld
? :: NetworkManager
? :: kworker/:1H
? :: kworker/:1H
? :: dhclient
? :: tuned
? :: sshd
? :: rsyslogd
? :: master
? :: pickup
? :: qmgr
tty1 :: bash
? :: kworker/:1H
? :: sshd
pts/ :: bash
? :: kworker/:
? :: memcached
? :: kworker/:
? :: kworker/:
? :: kworker/:
? :: kworker/:
? :: kworker/:
pts/ :: ps
[root@localhost proc]# ps -A
PID TTY TIME CMD
? :: systemd
? :: kthreadd
? :: ksoftirqd/
? :: kworker/:0H
? :: kworker/u256:
? :: migration/
? :: rcu_bh
? :: rcu_sched
? :: lru-add-drain
? :: watchdog/
? :: watchdog/
? :: migration/
? :: ksoftirqd/
? :: kworker/:0H
? :: watchdog/
? :: migration/
? :: ksoftirqd/
? :: kworker/:0H
? :: watchdog/
? :: migration/
? :: ksoftirqd/
? :: kworker/:0H
? :: kdevtmpfs
? :: netns
? :: khungtaskd
? :: writeback
? :: kintegrityd
? :: bioset
? :: kblockd
? :: md
? :: edac-poller
? :: kworker/:
? :: kswapd0
? :: ksmd
? :: khugepaged
? :: crypto
? :: kthrotld
? :: kmpath_rdacd
? :: kaluad
? :: kpsmoused
? :: kworker/:
? :: ipv6_addrconf
? :: deferwq
? :: kauditd
? :: mpt_poll_0
? :: ata_sff
? :: 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/:
? :: 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
? :: 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
? :: xfs-buf/dm-
? :: xfs-data/dm-
? :: xfs-conv/dm-
? :: xfs-cil/dm-
? :: xfs-reclaim/dm-
? :: xfs-log/dm-
? :: xfs-eofblocks/d
? :: xfsaild/dm-
? :: auditd
? :: dbus-daemon
? :: polkitd
? :: irqbalance
? :: systemd-logind
? :: crond
? :: login
? :: firewalld
? :: NetworkManager
? :: kworker/:1H
? :: kworker/:1H
? :: dhclient
? :: tuned
? :: sshd
? :: rsyslogd
? :: master
? :: pickup
? :: qmgr
tty1 :: bash
? :: kworker/:1H
? :: sshd
pts/ :: bash
? :: kworker/:
? :: memcached
? :: kworker/:
? :: kworker/:
? :: kworker/:
? :: kworker/:
? :: kworker/:
pts/ :: ps

显示某个用户的所有进程

可以根据数值ID找到用户(-u),也可以根据用户名(-U)

这里以root为例。参考:【问题】root账号的UID和GID永远是0吗?

ps -fU root 或 ps -fu 0

输出结果完全一样

 显示某个组的所有进程

同上,只不过换成-G

ps -fG 0 或 ps -fG root

根据PID显示进程

-p--pid

[root@localhost home]# ps -fp
UID PID PPID C STIME TTY TIME CMD
root : ? :: login -- root
[root@localhost home]# ps -f --pid
UID PID PPID C STIME TTY TIME CMD
root : ? :: login -- root

也可以一次显示多个进程

[root@localhost home]# ps -f --pid ,
UID PID PPID C STIME TTY TIME CMD
root : ? :: login -- root
root : pts/ :: -bash
[root@localhost home]# ps -fp ,
UID PID PPID C STIME TTY TIME CMD
root : ? :: login -- root
root : pts/ :: -bash

根据tty显示进程

[root@localhost home]# ps -t tty1
PID TTY TIME CMD
tty1 :: bash
[root@localhost home]# ps -ft tty1
UID PID PPID C STIME TTY TIME CMD
root : tty1 :: -bash

显示进程树

对于父子进程,如果父亲死了,子进程的的父进程就变成了init或systemd

显示系统上所有进程的进程树

ps -e --forest

显示给定进程的进程树

-C:Select by command name。这个命令会把name指定进程的所有子进程显示出来

[root@localhost home]# ps -f --forest -C sshd
UID PID PPID C STIME TTY TIME CMD
root : ? :: /usr/sbin/sshd -D
root : ? :: \_ sshd: root@pts/,pts/,pts/
[root@localhost home]# ps -ef --forest | grep -v grep | grep sshd
root : ? :: /usr/sbin/sshd -D
root : ? :: \_ sshd: root@pts/,pts/,pts/

指定查看ps某些列的输出

使用-o选项

ruser,pid,ppid,lwp(线程low weight process),psr(处理器processor),args(用comm也行),etime(elapsed time,自从该进程/线程启动过了多长时间)

[root@localhost home]# ps -o pid,ppid,user,cmd
PID PPID USER CMD
root -bash
root ps -o pid,ppid,user,cmd

根据PID查找进程

[root@localhost home]# ps -f --forest -C sshd
UID PID PPID C STIME TTY TIME CMD
root : ? :: /usr/sbin/sshd -D
root : ? :: \_ sshd: root@pts/,pts/,pts/
[root@localhost home]# ps -p -o comm
COMMAND
sshd

显示一个进程及其所有子进程的pid

[root@localhost home]# ps -C sshd -o pid
PID

显示某一服务执行多长时间

[root@localhost home]# ps -eo comm,etime,user | grep sshd
sshd :: root
sshd :: root

查找当前系统下,CPU 或 内存占用率最高的进程

[root@localhost home]# ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head
PID PPID CMD %MEM %CPU
/usr/bin/python -Es /usr/sb 0.7 0.0
/usr/bin/python -Es /usr/sb 0.4 0.0
/usr/lib/polkit-/polkitd - 0.3 0.0
/usr/sbin/NetworkManager -- 0.2 0.0
/usr/sbin/rsyslogd -n 0.2 0.0
/usr/lib/systemd/systemd -- 0.1 0.0
sshd: root@pts/,pts/,pts/ 0.1 0.0
/sbin/dhclient -d -q -sf /u 0.1 0.0
/usr/lib/systemd/systemd-ud 0.1 0.0
[root@localhost home]# ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head
PID PPID CMD %MEM %CPU
/usr/lib/systemd/systemd -- 0.1 0.0
[kthreadd] 0.0 0.0
[ksoftirqd/] 0.0 0.0
[kworker/:0H] 0.0 0.0
[kworker/u256:] 0.0 0.0
[migration/] 0.0 0.0
[rcu_bh] 0.0 0.0
[rcu_sched] 0.0 0.0
[lru-add-drain] 0.0 0.0

对于那些未响应进程,或占用资源奇高的进程可以找到他并杀死

首先找到该进程,然后杀死该进程

借助watch命令执行实时进程监控

ps命令显示静态信息,可以借助watch命令实时监控进程信息,还能制定监控那些项

watch -n 1 'ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head'

Every .0s: ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head                             Fri Oct  :: 

   PID   PPID CMD                         %MEM %CPU
/usr/bin/python -Es /usr/sb 0.7 0.0
/usr/bin/python -Es /usr/sb 0.4 0.0
/usr/lib/polkit-/polkitd - 0.3 0.0
/usr/sbin/NetworkManager -- 0.2 0.0
/usr/sbin/rsyslogd -n 0.2 0.0
/usr/lib/systemd/systemd -- 0.1 0.0
sshd: root@pts/,pts/,pts/ 0.1 0.0
/sbin/dhclient -d -q -sf /u 0.1 0.0
/usr/lib/systemd/systemd-ud 0.1 0.0

显示安全信息

尤其对于SELinux,如下命令显示安全信息

ps -eM  或  ps --context

也可以指定输出哪些项,使用选项-o

ps -eo  ruser,pid,ppid,lwp(线程low weight process),psr(处理器processor),args(用comm也行),etime(elapsed time,自从该进程/线程启动过了多长时间)

[root@localhost home]# ps -eo  euser,ruser,suser,fuser,f,comm,label
EUSER RUSER SUSER FUSER F COMMAND LABEL
root root root root systemd system_u:system_r:init_t:s0
root root root root kthreadd system_u:system_r:kernel_t:s0
root root root root ksoftirqd/ system_u:system_r:kernel_t:s0
root root root root kworker/:0H system_u:system_r:kernel_t:s0
root root root root kworker/u256: system_u:system_r:kernel_t:s0
root root root root migration/ system_u:system_r:kernel_t:s0
root root root root rcu_bh system_u:system_r:kernel_t:s0

与watch搭配使用动态显示进程信息

watch -n 2 'ps -aef | grep firefox'

pstree

ps命令可以显示当前正在运行的那些进程的信息,但是对于它们之间的关系却显示得不够清晰。在Linux系统中,系统调用fork可以创建子进程,通过子shell也可以创建子进程,Linux系统中进程之间的关系天生就是一棵树,树的根就是进程PID为1的init 或 systemd进程。

最小化安装时,默认没有这个命令。需要单独安装yum -y install psmisc

简介

pstree将运行进程显示为树。 如果省略pid,树将以pid或init为根。 如果指定了用户名,则会显示该用户拥有进程的所有进程树。 pstree在视觉上合并相同的分支,方法是将它们放在方括号中,并在前面添加重复计数

用法演示

最简单的做法

不带任何参数

[root@localhost home]# pstree
systemd─┬─NetworkManager─┬─dhclient
│ └─*[{NetworkManager}]
├─auditd───{auditd}
├─crond
├─dbus-daemon───{dbus-daemon}
├─firewalld───{firewalld}
├─irqbalance
├─login───bash
├─lvmetad
├─master─┬─pickup
│ └─qmgr
├─memcached───*[{memcached}]
├─polkitd───*[{polkitd}]
├─rsyslogd───*[{rsyslogd}]
├─sshd───sshd─┬─bash───man───less
│ ├─bash
│ └─bash───pstree
├─systemd-journal
├─systemd-logind
├─systemd-udevd
└─tuned───*[{tuned}]

显示命令行参数

使用-a参数

[root@localhost home]# pstree -a
systemd --switched-root --system --deserialize
├─NetworkManager --no-daemon
│ ├─dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-eth0.pid -lf...
│ └─*[{NetworkManager}]
├─auditd
│ └─{auditd}
├─crond -n
├─dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
│ └─{dbus-daemon}
├─firewalld -Es /usr/sbin/firewalld --nofork --nopid
│ └─{firewalld}
├─irqbalance --foreground
├─login
│ └─bash
├─lvmetad -f
├─master -w
│ ├─pickup -l -t unix -u
│ └─qmgr -l -t unix -u
├─memcached -d -u root
│ └─*[{memcached}]
├─polkitd --no-debug
│ └─*[{polkitd}]
├─rsyslogd -n
│ └─*[{rsyslogd}]
├─sshd -D
│ └─sshd
│ ├─bash
│ │ └─man ps
│ │ └─less -s
│ ├─bash
│ └─bash
│ └─pstree -a
├─systemd-journal
├─systemd-logind
├─systemd-udevd
└─tuned -Es /usr/sbin/tuned -l -P
└─*[{tuned}]

强制pstree展开一样的子树

使用-c参数

[root@localhost home]# pstree -c
systemd─┬─NetworkManager─┬─dhclient
│ ├─{NetworkManager}
│ └─{NetworkManager}
├─auditd───{auditd}
├─crond
├─dbus-daemon───{dbus-daemon}
├─firewalld───{firewalld}
├─irqbalance
├─login───bash
├─lvmetad
├─master─┬─pickup
│ └─qmgr
├─memcached─┬─{memcached}
│ ├─{memcached}
│ ├─{memcached}
│ ├─{memcached}
│ └─{memcached}
├─polkitd─┬─{polkitd}
│ ├─{polkitd}
│ ├─{polkitd}
│ ├─{polkitd}
│ └─{polkitd}
├─rsyslogd─┬─{rsyslogd}
│ └─{rsyslogd}
├─sshd───sshd─┬─bash───man───less
│ ├─bash
│ └─bash───pstree
├─systemd-journal
├─systemd-logind
├─systemd-udevd
└─tuned─┬─{tuned}
├─{tuned}
├─{tuned}
└─{tuned}

对特定进程高亮显示

使用-H参数

pstree -H [PID]

[root@localhost home]# ps
PID TTY TIME CMD
pts/ :: bash
pts/ :: ps
[root@localhost home]# pstree -H
systemd─┬─NetworkManager─┬─dhclient
│ └─*[{NetworkManager}]
├─auditd───{auditd}
├─crond
├─dbus-daemon───{dbus-daemon}
├─firewalld───{firewalld}
├─irqbalance
├─login───bash
├─lvmetad
├─master─┬─pickup
│ └─qmgr
├─memcached───*[{memcached}]
├─polkitd───*[{polkitd}]
├─rsyslogd───*[{rsyslogd}]
├─sshd───sshd─┬─bash───man───less
│ ├─bash
│ └─bash───pstree
├─systemd-journal
├─systemd-logind
├─systemd-udevd
└─tuned───*[{tuned}]

显示进程组ID

使用-g参数

[root@localhost home]# pstree -g
systemd()─┬─NetworkManager()─┬─dhclient()
│ ├─{NetworkManager}()
│ └─{NetworkManager}()
├─auditd()───{auditd}()
├─crond()
├─dbus-daemon()───{dbus-daemon}()
├─firewalld()───{firewalld}()
├─irqbalance()
├─login()───bash()
├─lvmetad()
├─master()─┬─pickup()
│ └─qmgr()
├─memcached()─┬─{memcached}()
│ ├─{memcached}()
│ ├─{memcached}()
│ ├─{memcached}()
│ └─{memcached}()
├─polkitd()─┬─{polkitd}()
│ ├─{polkitd}()
│ ├─{polkitd}()
│ ├─{polkitd}()
│ └─{polkitd}()
├─rsyslogd()─┬─{rsyslogd}()
│ └─{rsyslogd}()
├─sshd()───sshd()─┬─bash()───man()───less()
│ ├─bash()
│ └─bash()───pstree()
├─systemd-journal()
├─systemd-logind()
├─systemd-udevd()
└─tuned()─┬─{tuned}()
├─{tuned}()
├─{tuned}()
└─{tuned}()

根据PID排序输出

默认情况下,pstree对有相同祖先的进程按名字排序。借助-n参数可以按pid排序

[root@localhost home]# pstree -n
systemd─┬─systemd-journal
├─lvmetad
├─systemd-udevd
├─auditd───{auditd}
├─dbus-daemon───{dbus-daemon}
├─polkitd───*[{polkitd}]
├─irqbalance
├─systemd-logind
├─crond
├─login───bash
├─firewalld───{firewalld}
├─NetworkManager─┬─*[{NetworkManager}]
│ └─dhclient
├─tuned───*[{tuned}]
├─sshd───sshd─┬─bash───man───less
│ ├─bash
│ └─bash───pstree
├─rsyslogd───*[{rsyslogd}]
├─master─┬─qmgr
│ └─pickup
└─memcached───*[{memcached}]

-p参数可以显示pid

[root@localhost home]# pstree -pn
systemd()─┬─systemd-journal()
├─lvmetad()
├─systemd-udevd()
├─auditd()───{auditd}()
├─dbus-daemon()───{dbus-daemon}()
├─polkitd()─┬─{polkitd}()
│ ├─{polkitd}()
│ ├─{polkitd}()
│ ├─{polkitd}()
│ └─{polkitd}()
├─irqbalance()
├─systemd-logind()
├─crond()
├─login()───bash()
├─firewalld()───{firewalld}()
├─NetworkManager()─┬─{NetworkManager}()
│ ├─{NetworkManager}()
│ └─dhclient()
├─tuned()─┬─{tuned}()
│ ├─{tuned}()
│ ├─{tuned}()
│ └─{tuned}()
├─sshd()───sshd()─┬─bash()───man()───less()
│ ├─bash()
│ └─bash()───pstree()
├─rsyslogd()─┬─{rsyslogd}()
│ └─{rsyslogd}()
├─master()─┬─qmgr()
│ └─pickup()
└─memcached()─┬─{memcached}()
├─{memcached}()
├─{memcached}()
├─{memcached}()
└─{memcached}()

显示特定用户下进程的进程树

[root@localhost home]# pstree root
systemd─┬─NetworkManager─┬─dhclient
│ └─*[{NetworkManager}]
├─auditd───{auditd}
├─crond
├─dbus-daemon───{dbus-daemon}
├─firewalld───{firewalld}
├─irqbalance
├─login───bash
├─lvmetad
├─master─┬─pickup
│ └─qmgr
├─memcached───*[{memcached}]
├─polkitd───*[{polkitd}]
├─rsyslogd───*[{rsyslogd}]
├─sshd───sshd─┬─bash───man───less
│ ├─bash
│ └─bash───pstree
├─systemd-journal
├─systemd-logind
├─systemd-udevd
└─tuned───*[{tuned}]

只显示具体进程的父子信息

使用-s参数

远程终端链接使用pstree显示乱码

使用-G参数

[root@localhost ~]# pstree -G
systemdqwqNetworkManagerqwqdhclient
x mq2*[{NetworkManager}]
tqagetty
tqauditdqqq{auditd}
tqcrond
tqdbus-daemonqqq{dbus-daemon}
tqfirewalldqqq{firewalld}
tqirqbalance
tqlvmetad
tqmasterqwqpickup
x mqqmgr
tqpolkitdqqq5*[{polkitd}]
tqrsyslogdqqq2*[{rsyslogd}]
tqsshdqqqsshdqwqbashqqqpstree
x mqbashqqqmanqqqless
tqsystemd-journal
tqsystemd-logind
tqsystemd-udevd
mqtunedqqq4*[{tuned}]

Linux命令——ps、pstree的更多相关文章

  1. Linux下多线程查看工具(pstree、ps、pstack),linux命令之-pstree使用说明, linux 查看线程状态。 不指定

    0.最常用 pstree:[root@iZ25dcp92ckZ temp]# pstree -a|grep multe  |       |   `-multepoolser  |       |   ...

  2. Linux命令之pstree - 以树状图显示进程间的关系

    pstree命令以树状图显示进程间的关系(display a tree of processes).ps命令可以显示当前正在运行的那些进程的信息,但是对于它们之间的关系却显示得不够清晰.在Linux系 ...

  3. [Linux] Linux命令之pstree - 以树状图显示进程间的关系

    转载自: http://codingstandards.iteye.com/blog/842156 pstree命令以树状图显示进程间的关系(display a tree of processes). ...

  4. linux命令ps aux|grep xxx详解

    对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程, 而ps命令(Process Status)就是最基本同时也是非常强大的进程查看命令. 使用该命令 可以确定有哪些进程正在运 ...

  5. linux 命令——PS命令

    首先要明白什么是进程进程是一个正在运行的程序.也就是说在Linux系统上运行的所有东西都是进程.和进程相比较,作业是一系列按一定顺序执行的命令.一条简单的命令可能会涉及多个进程,尤其是当使用管道和重定 ...

  6. Linux 命令 - ps: 显示当前进程的快照

    命令格式 ps [options] 实例 a) 查看所有的进程. huey@huey-K42JE:~$ ps aux | head USER PID %CPU %MEM VSZ RSS TTY STA ...

  7. linux命令之-pstree使用说明

    pstree  shows running processes as a tree. The tree is rooted at either pid or init if pid is omitte ...

  8. Linux命令: ps

    STAT 进程状态 S-睡眠 s-进程是会话向导进程 N拥有比普通优先级更低的 R-正在运行 D-短期等待 Z-僵尸进程 T被跟踪或者被停止 STATED 进程启动时间 TIME  进程使用CPU时间 ...

  9. (5)ps详解 (每周一个linux命令系列)

    (5)ps详解 (每周一个linux命令系列) linux命令 ps详解 引言:今天的命令是用来看进程状态的ps命令 ps 我们先看man ps ps - report a snapshot of t ...

随机推荐

  1. 无法嵌入互操作类型"NationalInstruments.TestStand.Interop.UI.ExecutionViewOptions"。请改用适用的接口

    参考一下文章说明, 修改Interop.UI动态库的引入属性为 False,不再报错:   VS2010,VS2012,VS2013中,无法嵌入互操作类型“……”,请改用适用的接口的解决方法 在VS2 ...

  2. SpringBoot中日志配置

    背景 由于一些框架中还使用log4j-1.x系列陈旧的日志框架,调试过程中有一些错误信息不能在控制台显示,增加了调试成本.以下配置方法 将帮助你获得log4j-1.x日志在控制台显示. 解决方法: 使 ...

  3. 解决no module named setuptools

    To install setuptools on Debian: sudo apt-get install python-setuptools For Python 3.x: sudo apt-get ...

  4. 【Leetcode_easy】883. Projection Area of 3D Shapes

    problem 883. Projection Area of 3D Shapes 参考 1. Leetcode_easy_883. Projection Area of 3D Shapes; 完

  5. react 生命周期图解

    参考地址:https://www.cnblogs.com/gdsblog/p/7348375.html

  6. vue项目开发优化

    1 按需引入ui组件 比如elementUI,不要直接在main.js中全局引入所有的组件,可以根据elementui的说明文件,按需引入 项目中的组件 2 异步引入路由组件 使用 { path:'/ ...

  7. MySQL报错argument out of range 1055解决办法

    参考:https://www.cnblogs.com/liangbenstudy/p/10246895.html MySQL 5.7.22查询时候报错 argument out of range 报错 ...

  8. 常见问题:MySQL/排序

    MySQL的排序分为两种,通过排序操作和按索引扫描排序. 按索引顺序扫描是一种很高效的方式,但使用的条件较为严格,只有orderby语句使用索引最左前列,或where语句与orderby语句条件列组合 ...

  9. JS 多数组中取最大数组,分组

    代码小结,使用 JS 对数据进行分组,对分组中的数组取最大数组: var combineTemplate = JSON.parse(data.combineTemplate); //根据仪器种类ID分 ...

  10. fastai 2019 part1 数据集分享

    链接:https://pan.baidu.com/s/1UuQ8gJ2qXLvPK2rdIqWCMQ 提取码:ghn9