KILLALL(1)

名称
killall - 名前で指定されるプロセスにシグナルを送る

書式
killall [-delmsvz] [-help] [-j jid] [-u user] [-t tty] [-c procname] [-SIGNAL] [procname ...]

解説
killall ユーティリティは、 kill(1) がプロセス id で指定されるプロセスにシグナルを送るのに対して、 名前で指定されるプロセスにシグナルをおくります。 デフォルトでは、 TERM シグナルを、 killall 実行者と同じ実 UID を持つ、 procname に名前が一致する全てのプロセスに送ります。 スーパユーザはどんなプロセスにたいしてもシグナルを送ることができます。

以下のようなオプションがあります。

-d | -v
    これから、行おうとすることをより冗長に報告します。 一つの -d オプションによって、シグナルを送ろうとするプロセスの一覧が表示されるか、 一つも一致するプロセスが見付からなかったことが示されます。

-e  -u オプションで指定して対応プロセスを探す際に、 (デフォルトの) 実ユーザ ID でなく、実効ユーザ ID を用います。

-help
    コマンドの使い方のヘルプを表示し、終了します。

-l  kill(1) の様に利用可能なシグナルの名前の一覧を表示し、終了します。

-m  引数 procname を ( 大文字小文字を区別する ) 正規表現として、 得られた名前に対して対応を取ります。 注意! 一つのドット (.) は、呼び出しユーザと同一の実 UID を持つ 全てのプロセスに一致し、 危険です。

-s  何が行われるのかだけを表示し、シグナルは送られません。

-SIGNAL
    デフォルトの TERM とは違うシグナルを送ります。 シグナルは、 (頭に SIG を付けても付けなくても良い) 名前もしくは数字で指定します。

-j jid
    jid で指定される牢屋のなかのプロセスを殺します。

-u user
    潜在的に対応するプロセスを、指定した user に属するものに限定します。

-t tty
    潜在的に対応するプロセスを、指定した tty で動作するものに限定します。

-c procname
    -u または -t のフラグと共に使用されたとき、潜在的に対応するプロセスを、指定した procname に限定します。

-z  ゾンビをスキップしません。 指定したパターンにマッチするゾンビがいる場合に いくらかのエラーメッセージが表示されることを除けば、他の影響は無いはずです。

全てのプロセス
uid が XYZ である全てのプロセスに対してシグナルを送る動作は、 kill(1) で既にサポートされています。 したがって、このような仕事を行うためには kill(1) を使ってください(たとえば、 $ kill -TERM -1 もしくは、 root になって、 $ echo kill -TERM -1 |su -m <user> で可能です。)。

診断
killall コマンドは、コマンドエラーが起こった場合は、短い利用法のメッセージを 表示し、終了状態 2 で終了します。 終了状態 1 は、一致するプロセスが見付からなかった時か、全ての プロセスに対してシグナルを送ることに成功しなかった時に返されます。 それ以外の場合は、終了状態 0 が返されます。

診断メッセージは、 -d オプションで要求された場合だけ表示されます。

関連項目
kill(1), pkill(1), sysctl(3), jail(8)

歴史
killall コマンドは FreeBSD 2.1 から導入されました。 killall コマンドは他のプラットホームでも利用可能なように設計されています。

作者
-nosplit killall プログラムは、 Wolfram Schneider によって提供されました。 このマニュアルページは Jörg Wunsch によって書かれました。 現在のバージョンの killall は、 Peter Wemm が sysctl(3) を使った C で書き直しました。