# kill La commande **kill** permet d’**envoyer un signal à un processus**. Elle est couramment utilisée pour fermer (**tuer**) un programme en cours d’exécution. Pour utiliser la commande **kill**, il est nécessaire de connaître le **PID** du processus à fermer. On utilise pour cela la commande **pidof**: ```bash bruno@DS916:~ $ pidof gitea 7189 ``` ```bash bruno@DS916:~ $ ps auxw | grep gitea bruno 18268 0.0 0.0 5856 964 pts/0 S+ 12:57 0:00 grep gitea ``` On peut ensuite fermer (tuer) proprement le processus: ```bash bruno@DS916:~ $ kill 7189 ``` Si on n’arrivez pas à fermer un programme qui a par exemple planter, il est interressant d’utiliser **kill** avec une option particulière permettant de **forcer la fermeture du processus** La **commande kill** permet d’envoyer des signaux à des processus, le signal utilisé pour forcer la fermeture d’un programme est **SIGKILL.** Sachez également que les signaux sont numérotés, le signal SIGKILL a le numéro 9. Pour forcer la fermeture d’un processus, utilisez la commande **kill** avec l’**option -s**, cette option permet de spécifier le signal à envoyer. ```bash bruno@DS916:~ $ kill -s 9 7189 ``` ```bash bruno@DS916:~ $ kill -s SIGKILL 7189 ``` One-line: ```bash bruno@DS916:~ kill $(pidof firefox) ``` On peut aussi utiliser la commande **pkill**: ```bash $ pkill gitea ``` et en forçant la fermeture: ```bash $ pkill -KILL gitea ``` ##### Lister les signaux disponibles ```bash $ kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR 31) SIGSYS ```