Pgrep e pkill

Publicado por Eduardo Mariano em 19/05/2010

[ Hits: 13.101 ]

 


Pgrep e pkill



Essa dica foi escrita por Rubens Queiroz de Almeida no dicas-l, achei interessante e resolvi postar aqui.

Quem é usuário antigo de sistemas Unix e derivados, provavelmente já gastou os dedos digitando coisas como:

ps -ef | grep eduardo

Mas como tudo no mundo do software livre, em que a ordem é simplificar e economizar tempo, veio alguém e criou os comandos pgrep e pkill.

Como o nome mesmo indica, pgrep significa process grep, que na verdade é o comando anterior aglutinado em apenas um. Por exemplo, eu quero descobrir os PID (process id) de todos os programas do usuário rubens associados ao Firefox:

pgrep -u eduardo firefox
9397

Se eu quiser matar algum processo, eu posso fazê-lo de forma genérica, eliminando todos os processos, de todos os usuários, ou posso também atuar de forma seletiva:

pkill firefox
ou
pkill -u eduardo firefox

Além de terminar processos, eu posso usar o comando pgrep em combinação com outros. A documentação do programa dá um exemplo interessante, em que o comando pgrep é usado para redefinir a prioridade de um programa:

renice +4 `pgrep netscape`

O programa netscape irá rodar exigindo menos recursos da máquina, sendo mais nice. :-)

Existem diversas possibilidades, mas as mais comuns e úteis são mesmo as que foram apresentadas. Uma outra diretiva bastante útil é a "-l", que faz com que o nome completo do processo seja listado juntamente com sua identificação:

pgrep -l ssh
1407 ssh-agent
2204 sshd
8162 ssh

Os programas pgrep e pkill fazem parte do pacote procps e podem ser instalados, em sistemas Debian e derivados, com o comando:

# apt-get install procps

Estes programas são de autoria de Kjetil Torgrim Homme e Albert Cahalan.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Encontrando documentação de comandos no seu próprio Linux

Listar somente diretórios

Comando "ls" completo, para mostrar várias características de seus arquivos e diretórios

Correção automática de comandos no bash

Descobrindo daemons (servidores) rodando em background

  

Comentários
[1] Comentário enviado por arauto_ em 19/05/2010 - 16:56h

Legal, a dica. Já está anotada.

[2] Comentário enviado por guimaluf em 11/03/2011 - 14:50h

aiaiai
quantas vezes eu não digitei
ps aux | grep firefox
olha o pid e
kill -9 35345

coisa linda de tux esse pkill

[3] Comentário enviado por vandomen em 26/08/2016 - 02:29h

Além de muito útil, o pgrep e pkill são cobrados na nova prova LPI1 101-400 (103.5 Create, monitor and kill processes).




Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts