PGREP(1)

NOME
pgrep, pkill - procura ou sinaliza processos com base em nomes e outros atributos

SINOPSE
pgrep [opções] padrão
pkill [opções] padrão

DESCRIÇÃO
pgrep examina os processos atualmente em execução e lista os IDs de processo que combinam os critérios de seleção para stdout (saída padrão). Todos os critérios devem corresponder. Por exemplo,

    $ pgrep -u root sshd

vai listar apenas os processos chamados sshd E pertencentes ao root. Por outro lado,

    $ pgrep -u root,daemon

vai listar os processos pertencentes ao root OU daemon.

pkill vai enviar um sinal especificado (por padrão, SIGTERM) para cada processo em vez de listá-los na stdout (saída padrão).

OPÇÕES

-sinal
--signal sinal
    Define o sinal para enviar para cada processo correspondente. Tanto nome numérico quanto o simbólico do sinal podem ser usado. (pkill apenas)

-c, --count
    Suprime a saída normal; em vez disso, imprime uma contagem de processos que correspondem. Quando a contagem não coincide com nada, por exemplo, retorna zero, o comando retornará valor diferente de zero.

-d, --delimiter delimitador
    Define a sequência usada para delimitar cada ID de processo na saída (por padrão, uma nova linha). (pgrep apenas.)

-f, --full
    O padrão normalmente é analisado pelo nome do processo. Quando -f está configurado, a linha de comando completa é usada.

-g, --pgroup pgrp,...
    Corresponde apenas os processos nos IDs de grupo de processo listados. O grupo de processos 0 é traduzido para o grupo de processos do próprio pgrep ou pkill.

-G, --group gid,...
    Corresponde apenas os processos cujo ID de grupo real está listado. Ou o valor numérico ou simbólico pode ser usado.

-i, --ignore-case
    Corresponde processos sem diferenciar maiúsculo/minúsculo.

-l, --list-name
    Lista o nome do processo, bem como o ID do processo. (pgrep apenas.)

-a, --list-full
    Lista o linha de comando completa, bem como o ID do processo. (pgrep apenas.)

-n, --newest
    Seleciona apenas o mais novo (iniciado mais recentemente) dos processos correspondentes.

-o, --oldest
    Seleciona apenas o mais antigo (iniciado menos recentemente) dos processos correspondentes.

-P, --parent ppid,...
    Corresponde apenas processos cujo ID de processo pai está listado.

-s, --session sid,...
    Corresponde apenas os processos cujo ID de sessão de processo está listado. ID de Sessão 0 é traduzido para o ID de sessão do próprio pgrep ou pkill.

-t, --terminal term,...
    Corresponde apenas os processos cujo terminal controlador está listado. O nome do terminal deve ser especificado sem o prefixo "/dev/".

-u, --euid euid,...
    Corresponde apenas os processos cujo ID de usuário efetivo está listado. Ou o valor numérico ou simbólico pode ser usado.

-U, --uid uid,...
    Corresponde apenas os processos cujo ID de usuário real está listado. Ou o valor numérico ou simbólico pode ser usado.

-v, --inverse
    Nega a correspondência. Essa opção geralmente é usada no contexto do pgrep. No contexto do pkill, a opção curta está desabilitada para evitar uso acidental da opção.

-w, --lightweight
    Mostra todos os IDs de thread em vez dos pids no contexto do pgrep. No contexto do pkill, essa opção está desabilitada.

-x, --exact
    Corresponde apenas a processos cujos nomes (ou linha de comando, se -f for especificado) corresponderem exatamente ao padrão.

-F, --pidfile arquivo
    Lê os PIDs do arquivo. Essa opção é talvez seja mais útil para pkill do que pgrep.

-L, --logpidfile
    Falha se o arquivo de pid (veja -F) não estiver travado.

-r, --runstates D,R,S,Z,...
    Corresponde apenas processos que correspondem ao estado de processo.

--ns pid
    Corresponde processos que pertencem aos mesmos espaços de nomes. É necessário executar como root para corresponder processos de outros usuários. Veja --nslist para como limitar quais espaços de nomes para corresponder.

--nslist nome,...
    Corresponde apenas aos espaços de nomes fornecidos. Espaços de nomes disponíveis: ipc, mnt, net, pid, user, uts.

-V, --version
    Exibe informação da versão e sai.

-h, --help
    Exibe a ajuda e sai.

OPERANDOS

padrão
    Especifica uma expressão regular estendida para corresponder nomes de processos ou linhas de comandos.

EXEMPLOS
Exemplo 1: Localizar o ID de processo do daemon named:

    $ pgrep -u root named

Exemplo 2: Fazer o syslog reler seu arquivo de configuração:

    $ pkill -HUP syslogd

Exemplo 3: Fornecer informação detalhada todos processos de xterm:

    $ ps -fp $(pgrep -d, -x xterm)

Exemplo 4: Fazer todos os processos chrome serem executados com nice maior:

    $ renice +4 $(pgrep chrome)

STATUS DE SAÍDA
0   Um ou mais processos corresponderam aos critérios. Para pkill, o processo também deve ter sido sinalizado com sucesso.
1   Nenhum processo correspondido ou nenhum deles pode ser sinalizado.
2   Erro de sintaxe na linha de comando.
3   Erro fatal: memória insuficiente etc.

NOTAS
O nome do processo usado para corresponder está limitado a 15 caracteres presentes na saída de /proc/pid/stat. Use a opção -f para corresponder a linha de comando completa, /proc/pid/cmdline.

O processo em execução do pgrep ou pkill nunca vai relatar a si próprio como correspondência.

ERROS
As opções -n, -o e -v não podem ser combinadas. Me avise se você precisar fazer isso.

Os processos defeituosos são relatados.

VEJA TAMBÉM
ps(1), regex(7), signal(7), killall(1), skill(1), kill(1), kill(2)

AUTOR
Kjetil Torgrim Homme (kjetilho@ifi.uio.no)

RELATANDO ERROS
Por favor, envie relatórios de erros para procps@freelists.org