Estes dois comandos exibem um lista de processos que estão sendo executados no sistema, de acordo com o critério que você selecionar. O pstree possui um saída mais limpa se comparado ao ps -f.
Se executar o ps sem argumentos ele irá mostrar somente os processos iniciados por você e que estão no terminal que você está utilizando:
$ ps PID TTY TIME CMD 18614 pts/3 00:00:00 bash 20173 pts/3 00:00:00 ps
Assim como muitos programas UNIX®, o ps possui muitas opções, das quais as mais comuns são:
Há muito mais opções. Verifique a página do manual ps(1) para mais informações.
A saída do
ps é dividida em campos diferentes: o mais interessante é
o campo PID
que contém o identificador do
processo. O campo CMD
contém o nome do
comando executado. Uma maneira muito comum de executar o
ps é a seguinte:
$ ps ax | less
Isto lhe dá uma lista de todos os processos que estão sendo executados, assim você pode identificar um ou mais processos que estão causando problemas e, subsequentemente, terminá-los.
O comando
pstree exibe processos na forma de árvore. Uma vantagem é
que você pode identificar imediatamente os pais dos processos: quando
você quer matar toda uma série de processos e eles são todos pais
e filhos, você pode simplesmente matar o processo pai. Você
usará a opção -p
para exibir o PID de cada processo,
e a opção -u
para exibir o nome do usuário que
iniciou o processo. Como a estrutura em árvore é normalmente bem
grande, você precisaria chamar o pstree da seguinte maneira:
$ pstree -up | less
Isto lhe dá uma melhor visualização de toda a árvore de processos.