Mateus Müller

O carinha do Linux

27 mar. 2019

PGREP: Encontrando PROCESSOS no LINUX

Você já aprendeu a gerenciar processos no Linux? Já conhece os principais comandos como top ou ps? __Fique sabendo que estes não são os únicos comandos para gerenciamento de processos. Nesta dica, vou te apresentar o comando pgrep para obter informações de processos de uma forma muito simples.

Este é um comando que muitos não conhecem, e geralmente acabam por conhecer durante o processo de estudos para alguma certificação Linux. O comando pkill vem no mesmo “pacote” do pgrep, ambos são complementares neste quesito.

Como usar o comando PGREP?

$ pgrep firefox
PGREP: Encontrando PROCESSOS no LINUX

Note que, basta digitar uma string de texto que contenha no nome de um processo, e ele irá retornar o PID do mesmo. O mesmo comando acima funcionaria se digitasse só fire ao invés de firefox_.

Desta forma, com o PID do processo em mãos, podemos finaliza-lo ou gerencia-lo de qualquer outra forma. É muito mais fácil do que executar o famoso “ps aux | grep nome_do_processo”, não é mesmo? Além disso, não utilizamos um pipe que impactaria no desempenho do comando.

PGREP para um usuário específico

$ pgrep -u mateus

Com esta opção é possível listar todos os processos relacionados a um determinado usuário. Entretanto, perceba que ele retorna somente os PIDs. Caso queiramos uma descrição simples, podemos utilizar o seguinte:

$ pgrep -u mateus -l
PGREP: Encontrando PROCESSOS no LINUX

Caso queiramos uma descrição completa do processo, bem parecida com a do comando ps, utilizamos o seguinte:

$ pgrep -u mateus -a

Outros filtros do PGREP

É possível também filtrar os processos mais novos e mais velhos do sistema;

$ pgrep -o -l
PGREP: Encontrando PROCESSOS no LINUX

Veja que o processo mais velho é o systemd com o PID número 1. Este processo nada mais é do que o init __disfarçado por baixo, veja na foto acima.

Para ver o processo mais novo:

$ pgrep -n -l

Outra função bastante interessante é o contador de processos existentes atrelados a uma determinada condição, como por exemplo, os usuários:

$ pgrep -u mateus -c

ou

$ pgrep -u root -c

E assim como o comando grep, podemos filtrar um determinado resultado da forma negativa, ou seja, com uma condicional negativa.

Por exemplo, para filtrar todos os processos que não pertencem ao usuário mateus:

$ pgrep -v -u mateus

Bom pessoal, espero que tenha gostado deste artigo. Se gostarem, não esqueçam de compartilhar com os colegas em grupos de Linux. Este artigo pode ajudar muitas outras pessoas.

Me siga no Instagram onde eu faço conteúdos da minha rotina diária.

Participe dos nossos grupos no Telegram e Facebook! 🙂

Se tiver alguma dúvida ou sugestão de conteúdo, por favor, comente!

Comentários Disqus