Il faut d'abord savoir ce que sont Signaux dans les systèmes de type Unix (cela ne prendra que quelques minutes).
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 selon les demandes des utilisateurs erreurs. Certains signaux, tels que le signal d'interruption, indiquent qu'un l'utilisateur a demandé au programme de faire quelque chose qui n'est pas dans la routine habituelle. 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 " $ kill -l commande " :
Dans la sortie ci-dessus, il est clairement visible que chaque signal a une valeur ' numéro du signal (par exemple 1, 2, 3) et d'un ' nom du signal (par exemple SIGUP, SIGINT, SIGQUIT). Pour un aperçu détaillé de la fonction de chaque signal, consultez le site suivant lien .
Enfin, pour en venir à la question "Pourquoi le numéro 9 en tuer -9 commande" :
Il existe plusieurs méthodes pour transmettre des signaux à un programme ou à un script. L'une des méthodes les plus couramment utilisées pour envoyer un signal est l'utilisation de la fonction tuer la syntaxe de base est la suivante
$ kill -signal pid
Où le signal est soit le nombre o nom du signal, suivi de l'identifiant du processus (pid) auquel le signal sera envoyé.
Par exemple - -SIGKILL (ou -9 ), le signal tue immédiatement le processus.
$ kill -SIGKILL 1001
et
$ kill -9 1001
Les deux commandes sont identiques, c'est-à-dire que nous avons utilisé le "nom du signal" ci-dessus et que nous avons utilisé le "numéro du signal" plus tard.
Verdict : Il est possible de choisir d'utiliser le "nom du signal" ou le "numéro du signal" avec le tuer commande.