Apunto aquí una orden que he necesitado miles de veces y de la que nunca me acuerdo:
$ kill -9 `ps -ef | grep -i nombre | awk {‘print $2’}`
Mata todos los procesos que tengan la cadena nombre en la descripción . Si no te acuerdas de esa orden, siempre puedes hacer un ps -aww| grep nombre y luego matar los procesos copiando y pegando los identificadores en una orden kill.
Buenas,
Para hacer esto tambien existe una sentencia en Linux que es el killall. Supongo que existira en todas las distribuciones linux.
Solo hay que ejecutar:
>killall -9
El resultado tendria que ser el mismo que el de tu programa.
Saludos.
Buenas de nuevo,
El ejemplo que he puesto antes la sentencia correcta seria
>killall -9 nombreproceso.
Antes he puesto entre «» (mayor) y no aparece.
supongamos que tienes varios procesos lanzados a través de java /usr/bin/java -jar nombreProceso
Por ejemplo, tienes Tomcat y Eclipse (a su vez, ambos lanzan varios procesos) y sólo quieres matar los relacionados con Eclipse. Killall no vale en este caso.
Este Cheesy siempre buscándole una pata más al gato. Además ¿quién demonios programa en java?
Bueeeeno. puedes hacer una copia del ejecutable ‘…java/bin/java’ en el mismo directorio y darle el nombre que tu quieras, así te aparece sólo el nombre que le has dado.
> cp …java/bin/java …java/bin/saludos
> …java/bin/saludos
> killall -9 saludos
🙂 Sí, yo _también_ programo en Java.
¿ Eso no es lo que ya hace pkill ? 🙂
Y si usan pkill -9 ?
En efecto, tenemos dos opciones mas:
$ pgrep jav | xargs kill -9
$ pkill -9 jav
matan todos los procesos cuya id contenga la cadena java, juanan, eso se merece un update 😛
También puedes: skill -9 -c