Primero necesita saber qué son las señales en sistemas similares a Unix (solo le llevará unos minutos).
Las señales son interrupciones de software enviadas a un programa (en ejecución) para indicar que ha ocurrido un evento importante.
Los eventos pueden variar desde solicitudes de usuarios hasta errores de acceso ilegal a la memoria. Algunas señales, como la señal de interrupción, indican que un usuario le ha pedido al programa que haga algo que no está en el flujo de control habitual.
Hay varios tipos de señales que podemos usar; para obtener una lista completa de todas las señales disponibles / posibles, use el comando " $ kill -l ":
En la salida anterior es claramente visible que cada señal tiene un ' número de señal ' (por ejemplo, 1, 2, 3) y un ' nombre de señal ' (por ejemplo, SIGUP, SIGINT, SIGQUIT) asociado a ella. Para obtener una búsqueda detallada de lo que hacen todas y cada una de las señales, visite este enlace .
Finalmente, llegando a la pregunta "Por qué el número 9 en el comando kill -9 ":
Hay varios métodos para enviar señales a un programa o script. Uno de los métodos comúnmente utilizados para enviar señales es usar el comando kill ; la sintaxis básica es:
$ kill -signal pid
Donde señal es el número o el nombre de la señal, seguido del Id de proceso (pid) al que se enviará la señal.
Por ejemplo, -SIGKILL (o -9 ), la señal mata el proceso inmediatamente.
$ kill -SIGKILL 1001
y
$ kill -9 1001
Ambos comandos son lo mismo, es decir, arriba hemos usado el 'nombre de la señal', y luego hemos usado 'número de la señal'.
Veredicto : Uno tiene la opción abierta de usar el 'nombre de la señal' o el 'número de la señal' con el comando de matar .