'\" te .\" Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved. .\" Copyright 1989 AT&T .\" Portions Copyright (c) 1982-2007 AT&T Knowledge Ventures .\" Portions Copyright (c) 1992, X/Open Company Limited All Rights Reserved .\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for permission to reproduce portions of its copyrighted documentation. Original documentation from The Open Group can be obtained online at http://www.opengroup.org/bookstore/. .\" The Institute of Electrical and Electronics Engineers and The Open Group, have given us permission to reprint portions of their documentation. In the following statement, the phrase "this text" refers to portions of the system documentation. Portions of this text are reprinted and reproduced in electronic form in the Sun OS Reference Manual, from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between these versions and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at http://www.opengroup.org/unix/online.html. This notice shall appear on any product containing this material. .TH kill 1 "2011 年 7 月 12 日" "SunOS 5.11" "ユーザーコマンド" .SH 名前 kill \- プロセスの終了またはシグナル送出 .SH 形式 .LP .nf \fB/usr/bin/kill\fR \fB-s\fR \fIsignal_name\fR \fIpid\fR... .fi .LP .nf \fB/usr/bin/kill\fR \fB-l\fR [\fIexit_status\fR] .fi .LP .nf \fB/usr/bin/kill\fR [\fB-\fIsignal_name\fR\fR] \fIpid\fR... .fi .LP .nf \fB/usr/bin/kill\fR [\fB-\fIsignal_number\fR\fR] \fIpid\fR... .fi .SH 機能説明 .sp .LP \fBkill\fR ユーティリティーは、各 \fIpid\fR オペランドによって指定されたプロセス (1 つまたは複数) にシグナルを送信します。 .sp .LP \fIpid\fR オペランドのそれぞれについて、\fBkill\fR ユーティリティーは次の引数で呼び出された \fBkill\fR(2) 関数と等価のアクションを実行します。 .RS +4 .TP 1. \fIpid\fR オペランドの値は、\fIpid\fR 引数として使用されます。 .RE .RS +4 .TP 2. \fIsig\fR 引数は、\fB-s\fR オプション、\fB-\fR\fIsignal_name\fR オプション、または \fB-\fR\fIsignal_number\fR オプションで指定された値です。あるいは、これらのオプションが何も指定されていない場合は、\fBSIGTERM\fR で指定された値です。 .RE .sp .LP シグナルが送信されるプロセスは、ユーザーがスーパーユーザーでないかぎり現在のユーザーに属していなければなりません。 .sp .LP \fBkill\fR のシェル組み込みバージョンの説明については、「注意事項」を参照してください。 .SH オプション .sp .LP サポートしているオプションは、次のとおりです。 .sp .ne 2 .mk .na \fB\fB-l\fR\fR .ad .RS 19n .rt (小文字のエル)オペランドが指定されていない場合、該当するシステムでサポートされている \fIsignal_name\fR のすべての値を書き出します。\fIexit_status\fR オペランドが指定され、それがシェル特殊パラメータ値 \fB?\fR およびシグナルが終了したプロセスに対応する \fBwait\fR の場合は、そのプロセスを終了するシグナルに対応する \fIsignal_name\fR が書き込まれます。\fIexit_status\fR オペランドが指定され、それがシグナル番号を示す符号なしの 10 進整数値なら、そのシグナルに対応する \fIsignal_name\fR が書き込まれます。その他の場合、結果は不確定です。 .RE .sp .ne 2 .mk .na \fB\fB-s\fR \fIsignal_name\fR \fR .ad .RS 19n .rt \fB\fR に定義されている記号名の 1 つを使って、送信するシグナルを指定します。\fIsignal_name\fR の値は、\fBSIG\fR 接頭辞なしで、大文字/小文字を区別しない方法で認識されます。さらに記号名 \fB0\fR は、ゼロのシグナル値を表すものと認識されます。\fBSIGTERM\fR の代わりに、対応するシグナルが送信されます。 .RE .sp .ne 2 .mk .na \fB\fB-\fR\fIsignal_name\fR\fR .ad .RS 19n .rt \fB-s\fR \fIsignal_name\fR と同等です。 .RE .sp .ne 2 .mk .na \fB\fB-\fR\fIsignal_number\fR\fR .ad .RS 19n .rt \fBSIGTERM\fR の代わりに使用するシグナルを表す、負でない 10 進整数 \fIsignal_number\fR を指定します。\fBkill\fR(2) への有効な呼び出しにおける \fIsig\fR 引数と同じです。 .RE .SH オペランド .sp .LP 次のオペランドがサポートされています。 .sp .ne 2 .mk .na \fB\fIpid\fR \fR .ad .RS 15n .rt 次のうちのいずれかを指定します。 .RS +4 .TP 1. シグナルが送信されるプロセスまたはプロセスグループを指定する 10 進の整数。\fIpid\fR オペランドの正の値、負の値、またはゼロで選択されたプロセスは、kill 関数で説明されているものと同じです。プロセス番号 0 が指定されると、プロセスグループ内のすべてのプロセスにシグナルが送信されます。最初の \fIpid\fR オペランドに負の値を指定する場合、オプションとして解釈されないように、前に \fB- -\fR を付加しなければなりません。 .RE .RS +4 .TP 2. シグナルが送信されるバックグラウンドプロセスグループを識別するジョブ制御のジョブ \fBID\fR。ジョブ制御ジョブ \fBID\fR 表記が適用できるのは、現在のシェル実行環境で \fBkill\fR を呼び出すときだけです。 .RE \fIpid\fR のジョブ制御ジョブ \fBID\fR タイプが使用できるのは、ジョブ制御オプションをサポートしているシステムだけです。 .RE .sp .ne 2 .mk .na \fB\fIexit_status\fR\fR .ad .RS 15n .rt シグナル番号を指定する 10 進の整数または シグナルが終了したプロセスの終了ステータス。 .RE .SH 使用法 .sp .LP プロセス番号は \fBps\fR(1) を使って知ることができます。 .sp .LP \fBkill\fR が独自のユーティリティー実行環境で動作するときは、ジョブ制御ジョブ \fBID\fR 表記は、前述のような働きをする必要はありません。次の 2 つの例を見てください。 .sp .in +2 .nf example% \fBnohup kill %1 &\fR example% \fBsystem( "kill %1");\fR .fi .in -2 .sp .sp .LP いずれにおいても \fBkill\fR は異なる環境で動作し、各ジョブ番号については関連性はありません。 .SH 出力 .sp .LP \fB-l\fR オプションが指定されなければ、標準出力は使用されません。 .sp .LP \fB-l\fR オプションが指定されると、各シグナルの記号名が次のフォーマットで書き込まれます。 .sp .in +2 .nf "%s%c", <\fIsignal_name\fR>, <\fIseparator\fR> .fi .in -2 .sp .LP この \fB<\fR\fIsignal_name\fR\fB>\fR は、\fBSIG\fR 接頭辞を付けずに大文字で指定します。\fB<\fR\fIseparator\fR\fB>\fR は復帰改行文字 (NEWLINE) またはスペース文字です。最後に書き込まれるシグナルの場合、\fB<\fR\fIseparator\fR\fB>\fR は復帰改行文字になります。 .sp .LP \fB-l\fR オプションと \fIexit_status\fR オペランドの両方が指定されると、対応するシグナルの記号名が次のフォーマットで書き込まれます。 .sp .in +2 .nf "%s\en", <\fIsignal_name\fR> .fi .in -2 .SH 使用例 .LP \fB例 1 \fR強制終了シグナルを送信する .sp .LP 次のコマンドを見てください。 .sp .in +2 .nf example% \fBkill -9 100 -165\fR example% \fBkill -s kill 100 -165\fR example% \fBkill -s KILL 100 -165\fR .fi .in -2 .sp .sp .LP 送信側プロセスが指定されたプロセスへのシグナル送信を許可されていて、指定されたプロセスが存在するという条件で、いずれのコマンドも \fB100\fR という \fBID\fR を持つプロセスと、\fB165\fR というプロセスグループ \fBID\fR を持つすべてのプロセスに \fBSIGKILL\fR シグナルを送信します。 .LP \fB例 2 \fR最初の負の引数のあいまいさを避ける .sp .LP シグナル番号またはプロセスグループを指定する最初の負の引数のあいまいさを避けるため、最初の負の数はいつもシグナルとします。そのため、プロセスグループ (たとえば \fB123\fR) にデフォルトシグナルを送信する場合、アプリケーションは次のようなコマンドを使用しなければなりません。 .sp .in +2 .nf example% \fBkill -TERM -123\fR example% \fBkill -- -123\fR .fi .in -2 .sp .SH 環境 .sp .LP \fBkill\fR の実行に影響を与える次の環境変数についての詳細は、\fBenviron\fR(5) を参照してください。\fBLANG\fR、\fBLC_ALL\fR、\fBLC_CTYPE\fR、\fBLC_MESSAGES\fR、および \fBNLSPATH\fR。 .SH 終了ステータス .sp .LP 次の終了ステータスが返されます。 .sp .ne 2 .mk .na \fB\fB0\fR\fR .ad .RS 6n .rt 各 \fIpid\fR オペランドに対して一致するプロセスが 1 つ以上見つかり、さらに 1 つ以上のプロセスに対して指定されたシグナルが処理されました。 .RE .sp .ne 2 .mk .na \fB>\fB0\fR\fR .ad .RS 6n .rt エラーが発生した。 .RE .SH 属性 .sp .LP 属性についての詳細は、マニュアルページの \fBattributes\fR(5) を参照してください。 .SS "/usr/bin/kill、csh、ksh88、sh" .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . 属性タイプ属性値 _ 使用条件system/core-os _ CSI有効 _ インタフェースの安定性確実 _ 標準T{ \fBstandards\fR(5) を参照してください。 T} .TE .SS "ksh" .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . 属性タイプ属性値 _ 使用条件system/core-os _ CSI有効 _ インタフェースの安定性不確実 .TE .SH 関連項目 .sp .LP \fBcsh\fR(1), \fBgetconf\fR(1), \fBjobs\fR(1), \fBksh\fR(1), \fBksh88\fR(1), \fBps\fR(1), \fBsh\fR(1), \fBshell_builtins\fR(1), \fBwait\fR(1), \fBkill\fR(2), \fBsignal\fR(3C), \fBsignal.h\fR(3HEAD), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5) .SH 注意事項 .SS "/usr/bin/kill" .sp .LP サポートされるリアルタイムシグナルの数は、\fBgetconf\fR(1) の値 \fB_POSIX_RTSIG_MAX\fR によって定義されます。 .SS "sh" .sp .LP \fBsh\fR には \fBkill\fR コマンドに、\fIjobid\fR でプロセスを識別する機能を追加した、組み込みコマンドが用意されています。\fB\fR\fBsh\fR の構文を次に示します。 .sp .in +2 .nf kill [ -sig ] [ pid ] [ %job ]... kill -l .fi .in -2 .sp .SS "csh" .sp .LP C シェルと \fBcsh\fR にも \fBkill\fR の組み込みコマンドが用意されています。構文は次のとおりです。 .sp .in +2 .nf kill [-sig][pid][%job]... kill -l .fi .in -2 .sp .sp .LP \fBcsh\fR における \fBkill\fR の組み込みコマンドは \fBTERM\fR (終了) シグナル (デフォルトの場合) または指定されたシグナルを、指定されたプロセス \fBID\fR、指定された\fIジョブ\fR、または現在の\fIジョブ\fRへ送信します。シグナルは番号または名前で指定します。シグナルを送るプロセスまたはジョブにデフォルトはありません。そのため、\fBkill\fR だけを入力しても現在のジョブにはシグナルを送信しません。送信中のシグナルが \fBTERM\fR (終了) または \fBHUP\fR (ハングアップ) の場合、そのジョブまたはプロセスには \fBCONT\fR (継続) シグナルも送られます。 .sp .ne 2 .mk .na \fB\fB-l\fR\fR .ad .RS 6n .rt 送信可能なシグナル名の一覧を表示します。 .RE .SS "ksh88" .sp .LP \fBksh88\fR における \fBkill\fR の構文は次のとおりです。 .sp .in +2 .nf kill [-sig][pid][%job]... kill -l .fi .in -2 .sp .sp .LP \fBksh88\fR における \fBkill\fR は、\fBTERM\fR (終了) シグナルまたは指定されたシグナルのいずれかを、指定されたジョブまたはプロセスに送信します。シグナルは、番号または名前 (\fBsignal.h\fR(3HEAD) に示される。ただし “\fBSIG\fR” という接頭辞を取り除いたもの) で指定します。送信するシグナルが \fBTERM\fR (終了) または \fBHUP\fR (ハングアップ) の場合、停止中のジョブまたはプロセスには \fBCONT\fR (継続) シグナルを送信します。\fIjob\fR という引数は、活動中のジョブではないプロセスのプロセス ID を指定することもできます。第 2 の形式の \fBkill\fR \fB-l\fR は、シグナル番号とシグナル名をリスト表示します。 .SS "ksh" .sp .LP \fBksh\fR における \fBkill\fR の構文は次のとおりです。 .sp .in +2 .nf kill [-n signum] [-s signame] job ... kill [-n signum] [-s signame] -l [arg ...] .fi .in -2 .sp .sp .LP \fB-l\fR が指定されていない最初の形式では、\fBkill\fR は、\fIjob\fR で指定された 1 つ以上のプロセスにシグナルを送信します。この場合、シグナルが捕捉または無視されていないかぎり、通常、プロセスは終了します。 .sp .LP \fIjob\fR には次のいずれかを指定します。 .sp .ne 2 .mk .na \fB\fInumber\fR\fR .ad .RS 12n .rt \fIjob\fR のプロセス ID。 .RE .sp .ne 2 .mk .na \fB\fB-\fR\fInumber\fR\fR .ad .RS 12n .rt \fIjob\fR のプロセスグループ ID。 .RE .sp .ne 2 .mk .na \fB\fB%\fR\fInumber\fR\fR .ad .RS 12n .rt ジョブ番号。 .RE .sp .ne 2 .mk .na \fB\fB%\fR\fIstring\fR\fR .ad .RS 12n .rt 名前が \fIstring\fR で始まるジョブ。 .RE .sp .ne 2 .mk .na \fB\fB%?\fR\fIstring\fR\fR .ad .RS 12n .rt 名前に \fIstring\fR が含まれるジョブ。 .RE .sp .ne 2 .mk .na \fB\fB%+\fR\fR .ad .br .na \fB\fB%%\fR\fR .ad .RS 12n .rt 現在のジョブ。 .RE .sp .ne 2 .mk .na \fB\fB%-\fR\fR .ad .RS 12n .rt 前のジョブ。 .RE .sp .LP \fB-n\fR オプションまたは \fB-s\fR オプションを使用してシグナルが指定されていない場合、\fBSIGTERM\fR シグナルが使用されます。 .sp .LP \fB-l\fR が指定されて、\fIarg\fR が指定されない場合、\fBkill\fR は、シグナルのリストを標準出力に書き込みます。それ以外の場合、\fIarg\fR には、シグナル名か、シグナル番号またはシグナルによって終了されたプロセスの終了ステータスを表す数値を指定できます。名前を指定した場合、対応するシグナル番号が標準出力に書き込まれます。数値を指定した場合、対応するシグナル名が標準出力に書き込まれます。 .sp .ne 2 .mk .na \fB\fB-l\fR\fR .ad .RS 14n .rt 前述のとおり、シグナルを送信するのではなく、シグナル名またはシグナル番号を一覧表示します。\fB-n\fR オプションおよび \fB-s\fR オプションは指定できません。 .RE .sp .ne 2 .mk .na \fB\fB-n\fR \fIsignum\fR\fR .ad .RS 14n .rt 送信するシグナルの番号を指定します。次の場合を除き、シグナル番号はプラットフォーム間の可搬性はありません。 .sp .ne 2 .mk .na \fB\fB0\fR\fR .ad .RS 7n .rt シグナルなし。 .RE .sp .ne 2 .mk .na \fB\fB1\fR\fR .ad .RS 7n .rt \fBHUP\fR .RE .sp .ne 2 .mk .na \fB\fB2\fR\fR .ad .RS 7n .rt \fBINT\fR .RE .sp .ne 2 .mk .na \fB\fB3\fR\fR .ad .RS 7n .rt \fBQUIT\fR .RE .sp .ne 2 .mk .na \fB\fB6\fR\fR .ad .RS 7n .rt \fBABRT\fR .RE .sp .ne 2 .mk .na \fB\fB9\fR\fR .ad .RS 7n .rt \fBKILL\fR .RE .sp .ne 2 .mk .na \fB\fB14\fR \fR .ad .RS 7n .rt \fBALRM\fR .RE .sp .ne 2 .mk .na \fB\fB15\fR \fR .ad .RS 7n .rt \fBTERM\fR .RE .RE .sp .ne 2 .mk .na \fB\fB-s\fR \fIsigname\fR\fR .ad .RS 14n .rt 送信するシグナルの名前を指定します。シグナル名は、\fB\fR で定義されている名前から接頭辞 \fBSIG\fR を取り除いたもので、大文字と小文字は区別されません。\fBkill\fR \fB-l\fR は、現在のプラットフォーム上のシグナルのリストを生成します。 .RE .sp .LP \fBksh\fR における \fBkill\fR は、終了時に次のいずれかの値を返します。 .sp .ne 2 .mk .na \fB\fB0\fR\fR .ad .RS 6n .rt 各 job オペランドに対して一致するプロセスが 1 つ以上見つかり、さらに 1 つ以上の一致するプロセスに対して指定されたシグナルが正常に送信されました。 .RE .sp .ne 2 .mk .na \fB>\fB0\fR\fR .ad .RS 6n .rt エラーが発生した。 .RE