Odpowiedzi:
-9jest numerem sygnału (w tym przypadku SIGKILL), więc kill -9przesyła znak SIGKILLdo danego procesu.
Ten sygnał powoduje natychmiastowe zakończenie procesu (chyba że czeka on w funkcji jądra). Sygnału nie można ani zignorować, ani proces odbiorczy nie może wykonać żadnej operacji czyszczenia po odebraniu sygnału (tzn. SIGKILLNie jest wywoływana procedura obsługi sygnału ). Zobacz także artykuł w Wikipedii na temat SIGKILL .
Ze strony man mojego killpolecenia (Linux):
The default signal for kill is TERM. Use -l or -L to list available
signals. Particularly useful signals include HUP, INT, KILL, STOP,
CONT, and 0. Alternate signals may be specified in three ways: -9
-SIGKILL -KILL.
EDYCJA :
kill -l( bashwbudowane polecenie) wyświetla następujące nazwy sygnałów i wartości liczbowe w moim systemie:
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
kill -lzawiera również wartości liczbowe. Jaki jest twój system operacyjny?
man killlistę wartości liczbowych dla niektórych sygnałów.
killjest w procps, która jest wersją 1:3.2.8-9w squeeze Debiana. I tak, Ubuntu to w zasadzie Debian. Zastanawiam się więc, dlaczego kill -lnie zwraca tego samego.
zshwbudowaną killkomendę, a nie /bin/kill(która faktycznie wyświetla wartości liczbowe, jak mówisz)
killwbudowanego. Pozwala to killkomendzie zaakceptować numery zadań lub nazwy (np kill %1.). Pozwala to killna użycie nawet po osiągnięciu pewnego limitu liczby procesów.
man signal
Pokaże mapowanie między numerami sygnałów i nazwami sygnałów.
-9jest przykładem-sigspec, jest równoważne z-s 9lub-n 9lub-s KILLlub-KILL.