Quiero matar un proceso, después de encontrar la identificación en un solo paso.
Actualmente uso estos dos comandos:
pidof <name>
kill <#number_which_is_result_of_command>
¿Cómo puedo escribir un solo comando para hacer esto?
command-line
process
kill
Cuil Yahoo
fuente
fuente
bash
?tcsh
? ...?kill
variedad de comandos funcionará desde la consola (además podría automatizarse en scripts, etc.). Sigue siendo bueno hacer que las personas conozcan laxkill
opción con seguridad.Respuestas:
También puede matar procesos por nombre:
Ejemplo:
fuente
pkill
akill
?-o
o-n
,pkill
también elimina todos los procesos de coincidencia, no solo uno.killall
es un consejo MUY MALO. Hace cosas muy diferentes dependiendo de en qué Unix / Linux estés.Para responder a su pregunta específica con su conjunto de comandos, use:
Dado que
pidof <name>
le da el PID del proceso que está tratando de matar, también puede usarlo con interruptores de línea de comandos como-9
etc.Probado con
bash
ytcsh
.fuente
kill $(pidof <name>)
es más compatible (POSIX) y se puede usar dentro de otro bloque de sustitución de comandos .$
versión funcionara con tcsh.tcsh
y tienes razón. No lo sabia. ¡Gracias por la información!Debería haber un comentario sobre Levon, pero me falta el representante aquí para hacerlo:
Refiriéndose a la discusión en la respuesta aceptada de esta pregunta: /server/397762/how-to-make-folders-00-99-with-a-single-command-in-ubuntu
Diría que podría ser preferible (o al menos útil / más claro para los buscadores posteriores) ejecutar
Referencia adicional sobre $ () vs. ``: http://mywiki.wooledge.org/BashFAQ/082
fuente
También puede usar el
killall
comando para matar el proceso en particular.fuente