kill (Unix)
Comanda UNIX kill este folosită pentru a trimite un semnal unui proces. Unul din semnalele cele mai des trimise este SIGKILL. Semanlul este folosit pentru a termina procesul, de unde și numele comenzii.
Sintaxă
modificarekill [-s semnal] pid kill [-l] semnal
unde semnal este valoarea numerică a semnalului, iar pid este identificatorul procesului (în engleză process identifier). Dacă semnalul nu este specificat, implicit se trimite semanlul SIGTERM. Ca și SIGKILL, SIGTERM termină procesul, diferența este că SIGTERM poate fi interceptat de proces, în timp ce SIGKILL nu poate fi interceptat, iar procesul este terminat imediat.
Toate semnalele cu excepția SIGKILL și SIGSTOP pot fi interceptate de un proces. SIGSTOP îngheață execuția unui proces, repornirea procesului se face cu SIGCONT.
Opțiunea -l listează toate semnalele care pot fi trimise:
# 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 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8 43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7 58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2 63) SIGRTMAX-1 64) SIGRTMAX
Numărul de dinaintea semnalului este numărul folosit în comandă pentru a specifica semnalul.
Implementare
modificarekill este implementat de obicei cu ajutorul apelului de sistem kill(). Apelul trimite un semnal unui proces sau unui grup de procese specificate prin identificatorul de proces. Implementări alternative pot să includă apelul de sistem sigqueue().
Exemple
modificarePresupunând că avem un proces cu identificatorul 1234, SIGTERM (15) poate fi trimis în următoarele moduri:
kill 1234 kill -s TERM 1234 kill -TERM 1234 kill -15 1234
Un semnal SIGKILL poate fi trimis în trei moduri:
kill -s KILL 1234 kill -KILL 1234 kill -9 1234
Un semnal SIGINT poate fi generat foarte simplu apăsând tastele Control-C, SIGTSTP se obține apăsând Control-Z, în timp ce SIGQUIT se obține apăsând Control-\ (backslash). Acesta din urmă forțează terminarea programului și generarea unui core dump. Unele programe precum Apache, Sendmail sau xinetd folosesc semnalul SIGHUP pentru a-și reîncărca datele de configurare.
Vezi și
modificareLegături externe
modificare- en Pagina de manual
- en kill, Commands & Utilities Reference, The Single UNIX® Specification, Issue 7 from The Open Group
linia de comandă pentru Unix (mai multe) | Programe în|||
Management de fișiere: | cat | cd | chmod | chown | chgrp | cksum | cmp | cp | du | df | file | fsck | ln | ls | lsof | mkdir | mount | mv | pwd | rm | rmdir | split | touch | ||
Management de procese: | at | chroot | cron | exit | kill | killall | nice | pgrep | pidof | pkill | ps | pstree | sleep | time | top | wait | ||
Management utilizator/mediu: | env | finger | id | mesg | passwd | su | sudo | uname | uptime | w | wall | who | whoami | write | ||
Procesare text: | awk | comm | cut | ed | ex | fmt | head | iconv | join | less | more | paste | sed | sort | tac | tail | tr | uniq | wc | xargs | ||
Programare Shell: | basename | echo | expr | false | printf | test | true | unset | Imprimare: lp | |
Communicații: inetd | netstat | ping | rlogin | traceroute |
Căutare: find | grep | strings |
Diverse: banner | bc | cal | dd | man | size | yes |