「pstree(1)」-

显示树形结构的进程列表

命令语法格式

pstree [options] [pid, user]

pstree -V, –version

命令描述

命令pstree将运行进程显示为树。树将以pid为根目录;如果省略pid,则以init为根。 如果指定了用户名,则会显示以该用户拥有的进程为根的所有进程树。

在视觉上,pstree合并相同的分支,方法是将它们放在方括号中,并在前面添加重复计数,例如:

init-+-getty 
	 |-getty 
	 |-getty 
	 `-getty 

会显示为:

init---4*[getty]

进程的子线程在父进程下找到,并以大括号中的进程名称显示,例如

icecast2---13*[{icecast2}] 

如果pstree以pstree.x11的名称调用,那么它将提示用户在行末按RETURN,并且在按下RETURN之前不会返回。当pstree在xterminal中运行时,这非常有用。

某些内核或mount参数(例如procfs的hidepid选项)将隐藏某些进程的信息。 在这些情况下,pstree将尝试在没有此信息的情况下构建树,将进程名显示为问号。

命令行选项

排序选项

-n, –numeric-sort
通过PID对具有相同祖先的进程进行排序,而不是按名称。 (数字排序。)

控制输出内容

-a, –arguments
显示命令行参数。 如果交换了进程的命令行,则该进程将显示在括号中。选项-a隐式禁用进程的压缩,但不禁用线程。

-c, –compact
禁用相同子树的压缩。 默认情况下,尽可能压缩子树。

-h, –highlight-all, -Hpid, –highlight-pid pid
突出显示当前进程及其祖先。 如果终端不支持突出显示,或者当前进程或其任何祖先都未显示在子树中,则无操作。

-H
像-h一样,但突出显示指定的进程。 与-h不同,如果突出显示不可用,则在使用-H时,pstree会失败。

-g, –show-pgids
显示PGID。 进程组ID在每个进程名称后的括号中以十进制数显示。-g隐式禁用压缩。 如果同时显示PID和PGID,则首先显示PID。

-l, –long
显示长行。 默认情况下,行被截断为COLUMNS环境变量或显示宽度。 如果这两种方法都不起作用,则使用默认的132列。

-N ns, –ns-sortns
显示指定类型的每个命名空间的单个树。 可用的ns类型有:ipc,mnt,net,pid,user,uts。 普通用户无权访问其他用户的进程信息,因此输出将受到限制。

-p, –show-pids
显示PID。 在每个进程名称后的括号中,以十进制数显示PID。 -p隐式禁用压缩。

-s, –show-parents
显示指定进程的父进程。

-S, –ns-changes
显示命名空间转换。 与-N一样,当以普通用户身份运行时,输出受到限制。

-t, –thread-names
显示线程的全名(如果可用)。

-T, –hide-threads
隐藏线程,并仅显示进程。

-u, –uid-changes
显示uid过渡。 每当进程的uid与其父进程的uid不同时,新的uid将显示在进程名称后面的括号中。

-Z, –security-context
(SELinux)显示每个进程的安全上下文。 只有在使用SELinux支持编译pstree时,此标志才有效。

绘制字符

-G, –vt100
使用VT100行绘制字符。

-U, –unicode
使用UTF-8(Unicode)行绘制字符。 在Linux 1.1-54及更高版本中,在控制台上输入UTF-8模式,回显为-e ' 33%8‘,并留下echo -e ' 33%@‘。

-A, –ascii
使用ASCII字符绘制树。

其他选项

-V
显示版本信息。

注意事项

某些字符集可能与VT100字符不兼容。

相关文件

/proc
proc文件系统的位置

相关手册

ps(1), top(1)

参考文献

  • man 1 pstree, Version 23.1-1+b1

更新日志

  • 09/26/2018 创建文章