Vous devez d'abord savoir ce que sont les signaux dans les systèmes de type Unix (cela ne prendra que quelques minutes).
Les signaux sont des interruptions logicielles envoyées à un programme (en cours d'exécution) pour indiquer qu'un événement important s'est produit.
Les événements peuvent varier des demandes des utilisateurs à des erreurs d'accès à la mémoire illégales. Certains signaux, tels que le signal d'interruption, indiquent qu'un utilisateur a demandé au programme de faire quelque chose qui n'est pas dans le flux de contrôle habituel.
Il existe plusieurs types de signaux que nous pouvons utiliser - pour obtenir une liste complète de tous les signaux disponibles / possibles, utilisez la commande " $ kill -l ":
Dans la sortie ci-dessus, il est clairement visible que chaque signal a un « numéro de signal » (par exemple 1, 2, 3) et un « nom de signal » (par exemple SIGUP, SIGINT, SIGQUIT) qui lui est associé. Pour une recherche détaillée de ce que fait chaque signal, visitez ce lien .
Enfin, pour arriver à la question "Pourquoi le numéro 9 dans la commande kill -9 ":
Il existe plusieurs méthodes pour transmettre des signaux à un programme ou à un script. Une des méthodes couramment utilisées pour envoyer un signal est d'utiliser la commande kill - la syntaxe de base est:
$ kill -signal pid
Où le signal est le numéro ou le nom du signal, suivi de l'identifiant de processus (pid) auquel le signal sera envoyé.
Par exemple - -SIGKILL (ou -9 ), le signal tue le processus immédiatement.
$ kill -SIGKILL 1001
et
$ kill -9 1001
les deux commandes sont identiques, c'est-à-dire que ci-dessus, nous avons utilisé le «nom du signal», et plus tard, nous avons utilisé le «numéro du signal».
Verdict : On a le choix entre utiliser le «nom du signal» ou le «numéro du signal» avec la commande kill .