CentOS - comando killall (para matar todos os processos com nomes correspondentes a um determinado padrão)

11

Recentemente, comecei a usar o CentOS. Fui tentar usar o utilitário killall , mas descobri que ele estava faltando, recebendo uma mensagem command not found ao tentar usá-lo. Como posso obter essa funcionalidade em meu sistema para que eu possa, por exemplo, matar todos os processos cujos nomes correspondam a um padrão?

    
por aireties 18.05.2017 / 02:52

3 respostas

12

O pkill utility é uma alternativa muito melhor para killall . killall não é portátil, pois o comportamento do comando é muito diferente entre os sistemas operacionais. pkill é portátil e se comporta da mesma maneira em todos os lugares. Também é muito mais flexível, pois fornece muitas maneiras diferentes de combinar os processos. Ele também compartilha o mesmo comportamento e argumentos que o pgrep utility , que permite que você veja quais processos ser combinado e sinalizado sem realmente sinalizá-los.

Uso: pkill foo (que seria o mesmo que killall foo )

    
por 18.05.2017 / 02:58
13
O

PSmisc contém o utilitário killall , junto com algumas outras ferramentas pequenas e úteis. Pode ser adicionado simplesmente com

yum install psmisc
    
por 18.05.2017 / 02:52
1

Além da solução de Patrick, a funcionalidade do comando killall pode ser replicada com o seguinte:

pkill -15 [process name]

Por exemplo, para eliminar todos os processos do memcached em execução, escreveríamos o seguinte:

pkill -15 memcached

O '-15' é a representação numérica de um sinal SIGTERM POSIX. Para obter uma lista de todos os sinais POSIX que podem ser acionados em um processo, use o seguinte comando:

kill -l

Isso retornará a seguinte tabela:

1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP
6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL      10) SIGUSR1
11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM
16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP
21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO       30) SIGPWR
31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3
38) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8
43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-7
58) SIGRTMAX-6  59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2
63) SIGRTMAX-1  64) SIGRTMAX

Mais informações sobre o que cada sinal faz podem ser encontradas aqui .

Espero que isso ajude!

    
por 05.04.2018 / 12:50

Tags