Inicio > Gestión de procesos > pkill

pkill: Terminar/enviar señales a procesos por nombre

pkill es un comando que localiza procesos basándose en su nombre u otros atributos y les envía una señal. Es similar a `pgrep`, pero la diferencia es que envía señales directamente a los procesos encontrados. Es útil para terminar o reiniciar todos los procesos con un nombre específico a la vez.

Descripción general

pkill utiliza las mismas capacidades de coincidencia de patrones que `pgrep` para encontrar procesos, pero envía la señal especificada a los procesos encontrados. La señal predeterminada es SIGTERM (15), que solicita una terminación normal del proceso. Puede enviar SIGKILL con la opción `-9`, pero esto es una terminación forzada, así que tenga cuidado.

Funciones principales

  • Enviar señales por nombre de proceso
  • Filtrar por varios criterios como usuario, terminal, ruta completa
  • La señal predeterminada es SIGTERM (terminación normal)
  • Terminación forzada (SIGKILL) posible

Opciones principales

El comando pkill permite seleccionar con precisión los procesos a los que se enviarán las señales a través de varias opciones.

Señales y coincidencia

Filtrado de procesos

Comando generado:

Combina los comandos.

Descripción:

`pkill` Ejecutando el comando.

Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.

Ejemplos de uso

Muestra varias formas de usar pkill para terminar o enviar señales a procesos específicos.

Terminación normal del proceso nginx

pkill nginx

Envía la señal SIGTERM a todos los procesos con el nombre nginx para solicitar una terminación normal.

Terminación forzada del proceso firefox propiedad de un usuario específico

pkill -u john -9 firefox

Termina forzosamente los procesos firefox que está ejecutando el usuario especificado (por ejemplo, 'john').

Terminar todos los procesos que incluyen 'my_script.sh' en la línea de comandos completa

pkill -f my_script.sh

Termina todos los procesos cuyo comando completo de ejecución incluye 'my_script.sh', no solo el nombre del proceso.

Terminar todos los procesos que se ejecutan en una terminal específica (tty1)

pkill -t tty1

Envía la señal SIGTERM a todos los procesos que se ejecutan en la terminal tty1.

Enviar la señal HUP al proceso httpd (reiniciar)

pkill -HUP httpd

Envía la señal SIGHUP al proceso httpd para solicitar que vuelva a cargar los archivos de configuración o se reinicie.

Consejos y precauciones

Puntos a tener en cuenta y consejos útiles al usar pkill.

Precauciones

  • Use `pkill -9` (SIGKILL) como último recurso. No da a los procesos la oportunidad de realizar tareas de limpieza, lo que puede provocar corrupción de datos o inestabilidad del sistema.
  • Para evitar la terminación involuntaria de procesos, es recomendable verificar primero qué procesos se seleccionarán con `pgrep`. (Ej: `pgrep -l <patrón>`)
  • Puede especificar patrones utilizando expresiones regulares. (Ej: `pkill 'apache.*'`)
  • pkill, por defecto, solo se dirige a los procesos del usuario actual. Se requiere acceso root para terminar procesos de otros usuarios.

Comandos de la misma categoría