KILL(1) | Comenzi utilizator | KILL(1) |
NUME
kill - termină un proces
REZUMAT
kill [-semnal|-s semnal|-p] [-q valoare] [-a] [--timeout milisecunde semnal] [--] pid|nume...
kill -l [număr|0xmască-semnal] | -L
kill -d pid
DESCRIERE
Comanda kill trimite semnalul specificat către procesele sau grupurile de procese specificate.
Dacă nu se specifică niciun semnal, se trimite semnalul TERM. Acțiunea implicită pentru acest semnal este de a încheia procesul. Acest semnal ar trebui utilizat de preferință față de semnalul KILL (numărul 9), deoarece un proces poate instala un gestionar pentru semnalul TERM pentru a efectua pași de curățare înainte de a se încheia în mod ordonat. În cazul în care un proces nu se termină după ce a fost trimis un semnal TERM, atunci se poate utiliza semnalul KILL; rețineți că acest din urmă semnal nu poate fi capturat și, prin urmare, nu oferă procesului țintă posibilitatea de a efectua o curățare înainte de a se termina.
Majoritatea shell-urilor moderne au o comandă kill încorporată, cu o utilizare destul de asemănătoare cu cea a comenzii descrise aici. Opțiunile --all, --pid și --queue, precum și posibilitatea de a specifica procesele după numele comenzii sunt extensii locale.
Dacă semnalul este 0, atunci nu se trimite niciun semnal real, dar se efectuează în continuare verificarea erorilor.
ARGUMENTE
Lista de procese care trebuie semnalate poate fi un amestec de nume și PID-uri.
pid
n
0
-1
-n
nume
OPȚIUNI
-s, --signal semnal
-l, --list [număr|0xmască-semnal]
$ ps s $$ UID PID PENDING BLOCKED IGNORED CAUGHT STAT TTY TIME COMMAND 1000 1608069 0000000000000000 0000000000000002 0000000000384000 0000000008013003 Ss pts/44 0:02 zsh $ kill -l 0x0000000000384000 TERM TSTP TTIN TTOU
-L, --table
-a, --all
-p, --pid
-r, --require-handler
--verbose
-q, --queue valoare
--timeout milisecunde semnal
Rețineți că sistemul de operare poate reutiliza PID-urile, iar implementarea unei funcții echivalente într-un shell care utilizează kill și sleep ar fi supusă unor situații în care semnalul de urmărire ar putea fi trimis către un proces diferit care utilizează un PID reciclat.
Opțiunea --timeout poate fi specificată de mai multe ori: semnalele sunt trimise secvențial cu temporizările specificate. Opțiunea --timeout poate fi combinată cu opțiunea --queue.
Ca exemplu, următoarea comandă trimite semnalele QUIT, TERM și KILL în succesiune și așteaptă 1000 de milisecunde între trimiterea semnalelor:
kill --verbose --timeout 1000 TERM --timeout 1000 KILL \ --signal QUIT 12345
-d, --show-process-state pid
$ kill -d $$ Blocked: INT Ignored: TERM TSTP TTIN TTOU Caught: HUP INT PIPE ALRM CHLD WINCH
STARE DE IEȘIRE
kill are următoarele valori de stare de ieșire:
0
1
64
NOTE
Deși este posibil să se specifice TID (ID-ul firului de execuție, a se vedea gettid(2)) al unuia dintre firele dintr-un proces cu mai multe fire ca argument pentru kill, semnalul este totuși direcționat către proces (adică către întregul grup de fire). Cu alte cuvinte, nu este posibil să se trimită un semnal către un fir selectat în mod explicit într-un proces cu mai multe fire. Semnalul va fi transmis unui fir selectat în mod arbitrar în procesul țintă care nu blochează semnalul. Pentru mai multe detalii, a se vedea signal(7) și descrierea CLONE_THREAD din clone(2).
Diferite shell-uri oferă o comandă kill încorporată care este preferată în raport cu executabilul kill(1) descris în acest manual. Cel mai simplu mod de a vă asigura că se execută comanda descrisă în această pagină este să utilizați ruta completă atunci când apelați comanda, de exemplu: /bin/kill -versiunea
AUTORI
Salvatore Valente <svalente@mit.edu>, Karel Zak <kzak@redhat.com>
Versiunea originală a fost preluată din BSD 4.4.
CONSULTAȚI ȘI
bash(1), tcsh(1), sigaction(2), kill(2), sigqueue(3), signal(7) proc(5) proc_pid_status(5)
RAPORTAREA ERORILOR
Pentru rapoarte de eroare, folosiți sistemul de urmărire al erorilor https://github.com/util-linux/util-linux/issues.
DISPONIBILITATE
Comanda kill face parte din pachetul util-linux care poate fi descărcat de la Linux Kernel Archive https://www.kernel.org/pub/linux/utils/util-linux/.
2025-03-29 | util-linux 2.41 |