回答:
-9
はシグナル番号(この場合SIGKILL
)であるため、問題のプロセスにをkill -9
送信SIGKILL
します。
このシグナルにより、プロセスは直ちに終了します(カーネル関数で待機している場合を除く)。シグナルを無視することも、受信プロセスがシグナルを受信した後にクリーンアップアクションを実行することもできません(つまり、シグナルハンドラーSIGKILL
が呼び出されません)。SIGKILLに関するWikipediaの記事も参照してください。
私のkill
コマンドのmanページから(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.
EDIT:
kill -l
(bash
組み込みコマンドは)私のシステム上で次の信号名と数値を示しています。
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 -l
では数値もリストされています。あなたのOSは何ですか?
man kill
数値をリストしていることに気付きました。
kill
は、Debian squeezeのprocps
バージョン1:3.2.8-9
です。はい、Ubuntuは基本的にDebianです。だから私はなぜkill -l
同じものを返さないのだろうか。
zsh
組み込みkill
コマンドを実行していたことが/bin/kill
kill
組み込みが必要な理由は2つあります。これにより、kill
コマンドがジョブ番号またはジョブ名(例:)を受け入れることができますkill %1
。また、kill
プロセス数の制限に達している場合でも使用できます。
-9
はのインスタンスであり-sigspec
、-s 9
または-n 9
または-s KILL
またはと同等-KILL
です。