Você pode usar o pkill:
pkill httpd
Você também pode querer usar a substituição de processos (embora isso não seja tão claro):
kill $(pgrep command)
E você pode querer usar xargs
:
pgrep command | xargs kill
para encontrar o PID do processo para matar o uso:
pgrep <process command>
Eu então uso o comando kill para matar o PID retornado por pgrep <process command>
kill <PID>
Esses comandos podem ser combinados em um, de modo a matar o PID ou o PID retornado por pgrep <process command>
? Ou existe um método para matar vários processos pelo nome do comando?
Algo como: kill(pgrep <name of process>)
Você também pode usar killall
, por exemplo,
killall firefox
para enviar SIGTERM
para todos os processos firefox
.
Sim, você pode usar um recurso bash e fazer um loop pela saída.
$ for proc in $(pgrep <process command>); do kill $proc; done
Você pode matar vários processos com array. Nesse caso, você pode especificar opções como $ip
, $hostname
ou algo semelhante.
ip=your_ip_address; declare -a arr=$(ps aux|grep tail|grep $ip|awk '{print $2}'); for pid in ${arr[@]}; do kill -9 $pid; done;
Tags ps kill process-management