PTREE(1) User Commands PTREE(1)

ptree
print process trees

ptree [
-a
] [
-c
] [
-z zone
] [
pid | user
]...

The ptree utility prints the process trees containing the specified pids or users, with child processes indented from their respective parent processes. An argument of all digits is taken to be a process-ID, otherwise it is assumed to be a user login name. The default is all processes.

The following options are supported:
 
 
All. Print all processes, including children of process 0.
 
 
Contracts. Print process contract memberships in addition to parent-child relationships. See process(4). This option implies the -a option.
 
 
zone
Zones. Print only processes in the specified zone. Each zone ID can be specified as either a zone name or a numerical zone ID.
This option is only useful when executed in the global zone.

The following operands are supported:
 
 
pid
Process-id or a list of process-ids. ptree also accepts /proc/nnn as a process-id, so the shell expansion /proc/* can be used to specify all processes in the system.
 
 
user
Username or list of usernames. Processes whose effective user IDs match those given are displayed.

 
 
/proc/*
process files

The ptree utility exits 0 on success, and >0 if an error occurs.

Example 1
Using ptree
The following example prints the process tree (including children of process 0) for processes which match the command name ssh:
$ ptree -a `pgrep ssh` 
        1     /sbin/init 
          100909 /usr/lib/ssh/sshd 
            569150 /usr/lib/ssh/sshd 
              569157 /usr/lib/ssh/sshd 
                569159 -ksh 
                  569171 bash 
                    569173 /bin/ksh 
                      569193 bash
    

Not-an-Interface

gcore(1), ldd(1), pargs(1), pgrep(1), pkill(1), plimit(1), pmap(1), ppgsz(1), preap(1), proc(1), ps(1), pwd(1), rlogin(1), time(1), truss(1), wait(1), fcntl(2), fstat(2), setuid(2), dlopen(3C), signal.h(3HEAD), core(4), proc(4), process(4), attributes(5), zones(5)
January 12, 2019 illumos