Como exibir informações do processo em um sistema Linux com o comando ps
Em sistemas operacionais de multiprocessamento como o Linux, os processos são parte integrante do fluxo de trabalho do sistema. Às vezes, os usuários precisam listar os processos em execução em um sistema para fins de monitoramento. Em tais situações, os utilitários de linha de comando do Linux podem ser úteis.
O comando ps é uma dessas ferramentas que exibe informações relacionadas aos processos em um sistema Linux. Vejamos o comando ps e alguns exemplos importantes de uso.
Qual é o comando ps?
Um processo é o componente básico da computação em uma máquina Linux. Cada programa que você abre executa um ou mais processos responsáveis pelo funcionamento do computador. De um aplicativo de edição de vídeo avançado a um utilitário simples como o comando mv , tudo é composto de processos.
O comando ps, que é um acrônimo para Status do Processo , é útil quando você deseja obter uma lista de todos os processos em execução no sistema. Este comando também fornece informações adicionais associadas a esses processos para o usuário.
Como usar o comando ps no Linux
A sintaxe básica do comando ps é:
ps [options]
Executar o comando ps sem nenhum argumento produz a seguinte saída:
ps
As informações a seguir são fornecidas na saída mencionada.
- PID : O ID do processo do processo destacado
- TTY : exibe o nome do terminal que você está usando
- TEMPO : O tempo alocado ao processo pela CPU
- CMD : O comando que é responsável por iniciar o processo
Listar todos os processos
Para obter uma lista de todos os processos em um sistema Linux, use o sinalizador -A ou -e com o comando ps padrão.
ps -A
ps -e
Ver processos associados ao terminal
O sinalizador -T exibirá a lista de todos os processos relacionados ao terminal.
ps -T
Você verá uma saída semelhante a esta.
Processos de exibição não associados ao terminal
O sinalizador -a listará os processos que não estão associados ao terminal atual.
ps -a
A tela exibirá uma saída.
Negar as opções especificadas
Você também pode usar -N ou o sinalizador –deselect com o comando ps para inverter o funcionamento de um argumento específico.
Por exemplo, a opção -T exibe os processos associados ao terminal. Adicionar -N ou o sinalizador –deselect com o comando mostrará os processos que não estão associados ao terminal atual.
ps -T -N
ps -T --deselect
Exibir colunas personalizadas na saída
O comando ps padrão exibe as seguintes colunas: PID, TTY, TIME e CMD. No entanto, você pode ajustar essas colunas e mostrar outros detalhes.
O sinalizador -eo permite que você especifique as colunas que deseja obter na saída.
ps -eo pid, uname, pcpu, stime, pri, f
Renomear colunas na saída
Você também pode renomear os rótulos das colunas na saída. O sinalizador -o permitirá que você faça isso.
ps -e -o pid=Process_ID, uid=User_ID, com=COMMAND
Listar os processos atualmente em execução
Para obter uma lista dos processos em execução no sistema, passe o sinalizador -ax com o comando ps. O -a significa Tudo .
ps -ax
Processos de exibição no formato BSD
O formato Linux de passagem de argumentos com o comando utiliza o caractere – (hífen). Por outro lado, o formato BSD não inclui nenhum caractere especial com os sinalizadores de argumento.
Por exemplo, ps -A (formato Linux) exibirá uma lista de todos os processos. O equivalente BSD deste comando é:
ps au
onde a representa Todos e u denota usuários.
Lista de Processos em Formato Completo
Para obter informações detalhadas relacionadas aos processos, passe a opção -ef ou -eF com o comando.
ps -ef
ps -eF
A saída mencionada acima contém as seguintes informações sobre processos.
- UID : O ID do usuário responsável pelo processo
- PID : o ID do processo da entrada
- PPID : O ID do processo pai
- C : uso da CPU e informações de programação relacionadas ao processo
- STIME : Hora em que o processo foi iniciado
- TTY : o nome do terminal que você está usando atualmente
- TEMPO : Quantidade de tempo de CPU usado pelo processo
- CMD : O comando que executou o processo
Obtenha uma lista de processos relacionados a um usuário
A opção -u exibe uma lista de todos os processos iniciados por um usuário específico.
ps -u username
Mostrar processos relacionados ao usuário raiz
Para exibir todos os processos executados pelo usuário root, passe o root com o sinalizador -U e -u .
ps -U root -u root
Obtenha um PID de processo
Para obter o ID do processo de um processo específico, use o sinalizador -C com o comando.
ps -C process-name
Substitua processo de nome com o nome do processo. A saída exibirá o ID do processo.
ps -C bash
Liste os tópicos de um processo específico
Você deve saber que um processo pode conter vários threads, cada um responsável por uma tarefa específica. Para exibir uma lista dos threads de um processo, use o sinalizador -L com o comando ps. Observe que você terá que passar o ID do processo do processo junto com o comando.
ps -L pid
Por exemplo
ps -L 1250
Processo de exibição associado a um grupo específico
Obter uma lista de processos relacionados a um determinado grupo também é fácil. Use o sinalizador -fG com o comando padrão.
ps -fG groupname
Alternativamente, você também pode passar o ID do grupo em vez do nome do grupo.
ps -fG groupid
Por exemplo
ps -fG sudoers
ps -fg 1000
Processos de exibição em formato de árvore
Para obter uma representação hierárquica em árvore dos processos em execução no Linux:
ps -f --forest -C bash
O comando mencionado irá exibir todos os processos relacionados ao bash.
Monitoramento de processos em execução no Linux
Saber quais processos estão sendo executados em seu computador pode ser útil se você estiver com poucos recursos. Você pode facilmente eliminar processos Linux que não respondem que você não deseja em seu sistema usando a linha de comando.
Para aqueles que têm computadores de baixo custo e desejam um sistema operacional que ofereça um desempenho estável, muitas distribuições leves do Linux estão disponíveis.