Linux – Script mata procesos

Quien no se ha encontrado alguna vez con un proceso con muchos hijos, un apache desbocado o muchos procesos zombies que consumen todo los recursos de la maquina. Con este script podemos matar todos los procesos que se llamen de una determinada forma de una vez.

El script es el siguiente:

 #!/bin/sh
kill -9 `ps -ef|grep -v grep |grep $1| awk '{print $2}'`

La Explicacion es la siguiente:

ps -ef|grep -v grep |grep $1 con estos comandos mostramos todos los procesos que hay en la maquina que se llamen $1. $1 es una variable que le pasaremos al script cuando lo invoquemos.

La salida de estos comandos solo seria:

juan@elsotanilllo:~/scripts$ ps -ef|grep -v grep |grep proceso
root 2259 1 0 Jul26 tty1 00:00:00 proceso
root 2265 1 0 Jul26 tty2 00:00:00 proceso
root 2266 1 0 Jul26 tty3 00:00:00 proceso
root 2267 1 0 Jul26 tty4 00:00:00 proceso
root 2268 1 0 Jul26 tty5 00:00:00 proceso
root 2269 1 0 Jul26 tty6 00:00:00 proceso

awk ‘{print $2}’ con el awk filtramos la segunda columna, que es la que nos interesa ya que es la que tiene los PID (identificadores de proceso) que es lo que entiende el Kill. La salida de los comandos hasta ahora seria:

juan@elsotanilllo:~/scripts$ ps -ef|grep -v grep |grep proceso
2259
2265
2266
2267
2268
2269

Una vez que ya tenemos los PID, tan solo queda matarlos con el kill -9
Después de escribir el script por ejemplo con el nombre MataProcesos.sh, tenemos que hacerlo ejecutable:

juan@elsotanilllo:~/scripts$ chmod +x MataProcesos.sh

Uso del Script:

Para usarlo, lo único que tenemos que hacer es llamarlo y pasarle como parámetro el nombre del proceso que queramos matar: httpd, samba, gcc, etc.

juan@elsotanilllo:~/scripts$ ./MataProcesos.sh httpd

Este ejemplo mataría todos los procesos httpd de la maquina, siempre que el usuario que ejecuta el script tenga suficientes privilegios.

Share

2 thoughts on “Linux – Script mata procesos

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>