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? ...?killvariedad de comandos funcionará desde la consola (además podría automatizarse en scripts, etc.). Sigue siendo bueno hacer que las personas conozcan laxkillopción con seguridad.Respuestas:
También puede matar procesos por nombre:
Ejemplo:
fuente
pkillakill?-oo-n,pkilltambién elimina todos los procesos de coincidencia, no solo uno.killalles 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-9etc.Probado con
bashytcsh.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.tcshy 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
killallcomando para matar el proceso en particular.fuente