Comando pstree do Linux
Nos sistemas operacionais do tipo Unix, o comando pstree exibe processos no formato de árvore.
Este documento descreve a versão GNU / Linux do pstree .
Descrição
O comando pstree mostra os processos em execução como uma árvore. A árvore está enraizada em pid ou init se pid for omitido. Se um nome de usuário for especificado, todas as árvores de processo enraizadas nos processos pertencentes a esse usuário serão mostradas.
Ramificações idênticas são mescladas colocando-as entre colchetes e prefixando-as com a contagem de repetições, por exemplo:
init - + - getty | -getty | -getty `-getty
torna-se
init --- 4 * [getty]
Os threads filhos de um processo são encontrados no processo pai e são mostrados com o nome do processo entre chaves, por exemplo,
icecast2 --- 13 * [{icecast2}]
Se pstree for chamado como pstree.x11 , ele solicitará ao usuário no final da linha que pressione return e não retornará até que isso aconteça. A execução deste comando é útil para quando o pstree for executado em um xterminal .
Certos parâmetros de kernel ou montagem , como a opção hidepid para procfs, ocultarão informações para alguns processos. Nessas situações, o pstree tentará construir a árvore sem essas informações, mostrando os nomes dos processos como pontos de interrogação.
Sintaxe
pstree [-a, --arguments] [-c, --compact] [-h, --highlight-all, -Hpid, --high-light-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] [ usuário , pid ]
pstree -V, --version
Opções
-uma | Mostrar argumentos da linha de comando . Se a linha de comando de um processo for trocada, esse processo será mostrado entre parênteses. -a desativa implicitamente a compactação para processos, mas não encadeamentos . |
-UMA | Use caracteres ASCII para desenhar a árvore. |
-c | Desative a compactação de subárvores idênticas. Por padrão, as subárvores são compactadas sempre que possível. |
-G | Use caracteres de desenho de linha VT100. |
-h | Destaque o processo atual e seus ancestrais . Este interruptor é um não-op se o terminal de não suporta destacando ou se nem o atual processo nem qualquer de seus antepassados estão em sub-árvore que está sendo mostrado. |
-H | Como -h , mas destaque o processo especificado. Ao contrário de -h , pstree falha ao usar -H se o realce não estiver disponível. |
-g | Mostrar PGIDs. Os IDs do grupo de processos são mostrados como números decimais entre parênteses após cada nome de processo. -p desativa implicitamente a compactação. Se PIDs e PGIDs forem exibidos, os PIDs serão mostrados primeiro. |
-eu | Exibir linhas longas. Por padrão, as linhas são truncadas para a largura da tela ou 132 se a saída for enviada para um não- ttyty ou se a largura da tela for desconhecida. |
-n | Classifique processos com o mesmo ancestral por PID em vez de por nome. (Classificação numérica.) |
-p | Mostrar PIDs. Os PIDs são mostrados como números decimais entre parênteses após cada nome de processo. -p desativa implicitamente a compactação. |
-s | Mostrar processos pai do processo especificado. |
-você | Mostrar transições de uid. Sempre que o uid de um processo difere do uid de seu pai, o novo uid é mostrado entre parênteses após o nome do processo. |
-VOCÊ | Use caracteres de desenho de linha UTF-8 (Unicode). No Linux 1.1-54 e superior, o modo UTF-8 é inserido no console com eco -e ’33 % 8′ e deixado com eco -e ‘33% @’ |
-V | Exibir informações da versão. |
-Z | (SELinux) Mostra o contexto de segurança para cada processo. Este sinalizador só funcionará se pstree estiver compilado com o suporte do SELinux. |
Exemplos
pstree -h
Exiba todos os processos como uma árvore, com o processo atual e seus ancestrais destacados. A saída será semelhante ao seguinte:
init─┬─NetworkManager─┬─dhclient │ ├─dnsmasq 3 └─3 * [{NetworkManager}] Ac─accounts-daemon───2 * [{accounts-daemon}] ├─atd ├─avahi-daemon───avahi-daemon ├─bluetoothd Cons─console-kit-dae───63 * [{console-kit-dae}] ├─cron ├─cupsd ├─dbus-daemon ├─dd 6─6 * [getty] ├─klogd ├─lightdm─┬─Xorg Light ├─lightdm─┬─init─┬─apache2───2 * [apache2───26 * [{apache2}]] Ativar spi-bus-launch─┬─dbus-daemon 3 │ │ │ └─3 * [{at-spi-bus-launch}] At │ │─at-spi2-registr─── {at-spi2-registr} Bus │ │ ──dbus-daemon Drop │ │ drop─dropbox───29 * [{dropbox}] G │ │─gconfd-2 │ │ │ ├─gimp─┬─script-fu 2 │ │ │─└2 * [{gimp}] Gn │ │ gn─gnome-terminal─┬─2 * [bash───vim] │ │ │ │─bash───pstree Gn │ │ ├─gnome-pty-helpe 3 │ │ │─33 * [{gnome-terminal}] G │ │─gvfs-afc-volume───2 * [{gvfs-afc-volume}] G │ │─gvfs-gphoto2-vo─── {gvfs-gphoto2-vo} G │ g─gvfs-mtp-volume─── {gvfs-mtp-volume} G │ │─gvfs-udisks2-vo───2 * [{gvfs-udisks2-vo}] G │ │─gvfsd─── {gvfsd} G │ │─gvfsd-fuse───4 * [{gvfsd-fuse}] G │ g─gvfsd-metadata─── {gvfsd-metadata} Indic │ │ indic─indicator-appli─── {indicador-appli} │ │ │ l─lxsession─┬─lxpanel───2 * [{lxpanel}] N │ │ ├─nm-applet───2 * [{nm-applet}] Op │ │ │─openbox─── {openbox} P │ │ │─pcmanfm───2 * [{pcmanfm}] 2 │ │ │─└2 * [{lxsession}] │ │ │ ──menu-em cache───2 * [{menu em cache}] S │ │ ├─ssh-agent 2 │ │ ├─2 * [upstart-dbus-br] ├ │ │─upstart-event-b Copiar -upstart-file-br │ │ │ ├─xclip X │ │─xfce4-notifyd │ │ │─xfconfd Light │ └─ {lightdm} 2 └─2 * [{lightdm}] ├─modem-manager ├─mysqld───16 * [{mysqld}] ├─ntpd ├─packagekitd───2 * [{packagekitd}] P─polkitd───2 * [{polkitd}] ├─sshd ├─syslogd ├─systemd-logind ├─systemd-udevd ├─udisksd───4 * [{udisksd}] Up─upstart-file-br ├─upstart-socket- ├─upstart-udev-br └─buddy-friendd───2 * [{friendd}]
Comandos relacionados
ps – Relate o status de um processo ou processos.
topo – Exibe uma lista classificável e continuamente atualizada de processos