PSTREE(1)

NAME
pstree - display a tree of processes

SYNOPSIS
pstree [-a, --arguments] [-c, --compact] [-h, --highlight-all, -Hpid, --highlight-pid pid] [-g] --show-pgids] [-l, --long] [-n, --numeric-sort] [-p, --show-pids] [-s, --show-parents] [-u, --uid-changes] [-Z, --security-context] [-A, --ascii, -G, --vt100, -U, --unicode] [pid, user]
pstree -V, --version

DESCRIPTION
pstree shows running processes as a tree. The tree is rooted at either pid or init if pid is omitted. If a user name is specified, all process trees rooted at processes owned by that user are shown.

pstree visually merges identical branches by putting them in square brackets and prefixing them with the repetition count, e.g.

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

becomes

    init---4*[getty]

Child threads of a process are found under the parent process and are shown with the process name in curly braces, e.g.

    icecast2---13*[{icecast2}]

If pstree is called as pstree.x11 then it will prompt the user at the end of the line to press return and will not return until that has happened. This is useful for when pstree is run in a xterminal.

Certain kernel or mount parameters, such as the hidepid option for procfs, will hide information for some processes. In these situations pstree will attempt to build the tree without this information, showing process names as question marks.

OPTIONS

-a  Show command line arguments. If the command line of a process is swapped out, that process is shown in parentheses. -a implicitly disables compaction for processes but not threads.

-A  Use ASCII characters to draw the tree.

-c  Disable compaction of identical subtrees. By default, subtrees are compacted whenever possible.

-G  Use VT100 line drawing characters.

-h  Highlight the current process and its ancestors. This is a no-op if the terminal doesn't support highlighting or if neither the current process nor any of its ancestors are in the subtree being shown.

-H  Like -h, but highlight the specified process instead. Unlike with -h, pstree fails when using -H if highlighting is not available.

-g  Show PGIDs. Process Group IDs are shown as decimal numbers in parentheses after each process name. -p implicitly disables compaction. If both PIDs and PGIDs are displayed then PIDs are shown first.

-l  Display long lines. By default, lines are truncated to the display width or 132 if output is sent to a non-tty or if the display width is unknown.

-n  Sort processes with the same ancestor by PID instead of by name. (Numeric sort.)

-p  Show PIDs. PIDs are shown as decimal numbers in parentheses after each process name. -p implicitly disables compaction.

-s  Show parent processes of the specified process.

-u  Show uid transitions. Whenever the uid of a process differs from the uid of its parent, the new uid is shown in parentheses after the process name.

-U  Use UTF-8 (Unicode) line drawing characters. Under Linux 1.1-54 and above, UTF-8 mode is entered on the console with echo -e '\033%8' and left with echo -e '\033%@'

-V  Display version information.

-Z  (SELinux) Show security context for each process. This flag will only work if pstree is compilied with SELinux support.

FILES

/proc
    location of the proc file system

BUGS
Some character sets may be incompatible with the VT100 characters.

SEE ALSO
ps(1), top(1).