killall コマンド

目的

呼び出しプロセス以外のプロセスをすべて取り消します。

構文

killall [ - ] [ - Signal ]

Description

killall コマンドは、コマンド発行者が開始したプロセスのうち、killall プロセスを作成するプロセス以外のプロセスをすべて取り消します。 このコマンドを使用すると、ユーザーが制御しているシェルによって作成されたプロセスをすべて簡単に取り消すことができます。 killall コマンドは、root ユーザーによって開始されると、それを開始したプロセスを除く取り消し可能なすべてのプロセスを取り消します。 複数のシグナルが指定された場合は、最後のシグナルだけが有効となります。

シグナルを指定しないと、killall コマンドは SIGKILL シグナルを送信します。

フラグ

項目 Description
- 初めに SIGTERM シグナルを送信し、次に、最初のシグナルの受信後 30 秒間存続しているすべてのプロセスに SIGKILL シグナルを送信します。 これにより、SIGTERM シグナルを受け取るプロセスはクリーンアップできるようになります。 --Signal が両方とも設定された場合、killall コマンドは初めに指定されたシグナルを送信し、次に、最初のシグナルの受信後 30 秒間存続しているすべてのプロセスに SIGKILL シグナルを送信します。
-Signal 指定された Signal 番号または SignalName を持つシグナルを送信します。

セキュリティー

RBAC ユーザーおよび Trusted AIX ユーザーへの注意: このコマンドは特権命令を実行できます。 特権命令を実行できるのは特権ユーザーのみです。 権限および特権についての詳細情報は、「セキュリティー」の『特権コマンド・データベース』を参照してください。 このコマンドに関連した特権および権限のリストについては、lssecattr コマンドまたは getcmdattr サブコマンドの項を参照してください。

  1. 開始したすべてのバックグラウンド・プロセスを停止するには、次のように入力します。
    killall
    これですべてのバックグラウンド・プロセスに kill シグナル 9 (SIGKILL シグナルとも呼ばれる) が送信されます。
  2. すべてのバックグラウンド・プロセスを停止してクリーンアップを可能にするには、次のように入力します。
    
    killall -
    これでシグナル 15 (SIGTERM シグナル) が送られ、30 秒間待った後、シグナル 9 (SIGKILL シグナル) が送信されます。
  3. 特定のシグナルをバックグラウンド・プロセスに送信するには、次のように入力します。
    killall -2
    これでシグナル 2 (SIGINT シグナル) がバックグラウンド・プロセスに送信されます。