Linux, コマンド · 1 min read · Sep 15, 2025

初心者のためのLinux killallコマンド (8つの例)

Linuxでプロセスを終了させたい場合に使用できるLinux killコマンドについてはすでに説明しました。しかし、同じ目的のために使用できる別のコマンドラインユーティリティが存在します:killall。このチュートリアルでは、いくつかのわかりやすい例を使ってこのコマンドの基本を説明します。

しかし、その前に、このチュートリアルに含まれるすべての例はUbuntu 22.04 LTSでテストされていることを述べておく価値があります。

Linux killallコマンド

killallコマンドは、名前でプロセスを終了させることができます。以下はツールの構文です:

killall [OPTIONS] name

そして、manページではツールについて次のように説明しています:

killallは、指定されたコマンドのいずれかを実行しているすべてのプロセスに信号を送信します。信号名が指定されていない場合、SIGTERMが送信されます。信号は名前(例: -HUPまたは-SIGHUP)または番号(例: -1)またはオプション-sで指定できます。

コマンド名が正規表現でない場合(オプション-r)でスラッシュ(/)を含む場合、その特定のファイルを実行しているプロセスが名前に関係なく選択されます。

killallは、リストされた各コマンドのために少なくとも1つのプロセスが終了した場合、またはコマンドがリストされていない場合に、-uおよび-Z検索基準に一致する少なくとも1つのプロセスがあった場合にゼロの戻りコードを返します。それ以外の場合、killallは非ゼロを返します。

killallプロセスは自分自身を終了させることはありません(ただし、他のkillallプロセスを終了させることはあります)。

以下のQ&A形式の例は、killallコマンドがどのように機能するかをよりよく理解するのに役立つでしょう。

Linuxのkillallコマンドの説明

Q1. killallコマンドの使い方は?

ツールの基本的な使い方は非常に簡単です - killallにプロセスの名前を引数として渡すだけです。たとえば、私のシステムで実行されていたgthumbプロセスを終了させるために、次のようにkillallを使用しました:

killall gthumb

プロセスの正確な名前がわからない場合は、psコマンドを使用してこの情報を取得できます。

Q2. killallは大文字と小文字を区別しますか?

はい、区別します。ユーザーがプロセス名を正しい大文字小文字で書かなかった場合、「プロセスが見つかりません」というエラーが表示されます。以下はその例です:

ただし、必要であれば、-Iコマンドラインオプションを使用してkillallに大文字小文字を無視させることができます。

Q3. killallがプロセスを終了する前に確認を求めるようにするには?

killallコマンドがプロセスを終了させる前にユーザーの許可を求めるようにしたい場合は、-iコマンドラインオプションを使用できます。これにより、killall操作が対話式になります。

たとえば:

Q4. killallがプロセスに送信する信号を選択するには?

デフォルトでは、killallがプロセスに送信するのはSIGTERM信号です。ただし、他の信号を送信することもできます。これらの他の信号を送信するには、-s–signal、および-SIGNALオプションを使用できます。

ただし、これを機能させるには、killallコマンドが送信できるすべての信号を知っておく必要があります。これを行うには、-lコマンドラインオプションを使用できます。

killall -l

以下は、前述のコマンドが私たちのシステムで生成したリストです:

Q5. 指定されたプロセスが存在しない場合にkillallが不満を言わないようにするには?

「killall」に渡された名前のプロセスが実行されていない場合(存在しない場合)、ツールは出力でこれをユーザーに伝えます。

ただし、そのような出力を生成させたくない場合は、-qコマンドラインオプションを使用できます。

したがって、-qを使用した場合、killallコマンドは静かに保たれたことがわかります。

Q6. 特定のユーザーが所有するすべてのプロセスを終了させるには?

特定のユーザーが所有するすべてのプロセスを終了させる必要がある場合は、killallが提供する-uオプションを使用できます。言うまでもなく、このオプションはユーザー名を入力として指定する必要があります。

killall -u [user-name]

たとえば:

killall -u himanshu

Q7. 時間に基づいてプロセスを終了させるには?

5時間以上実行されているすべてのプロセスを終了させたい場合は、次のように-oオプションを使用できます:

killall -o 5h

もちろん、すべてのプロセスを終了させたくない場合は、プロセス名を指定できます。同様に、たとえば4時間未満のプロセスを終了させたい場合は、-yコマンドラインオプションを使用して次のようにできます。

killall -y 4h

manページでは、これらのオプションについて次のように説明しています:

-o, --older-than  
              指定された時間よりも古い(開始前の)プロセスのみを一致させます。時間は浮動小数点数と単位で指定されます。単位は、秒、分、時間、日、週、月、年のそれぞれに対してs,m,h,d,w,M,yです。

-y, --younger-than  
              指定された時間よりも新しい(開始後の)プロセスのみを一致させます。時間は浮動小数点数と単位で指定されます。単位は、秒、分、時間、日、週、月、年のそれぞれに対してs,m,h,d,w,M,yです。

Q8. killallがプロセスが終了するまで戻らないようにするには?

killallがプロセスに信号を送信した後、プロセスが終了するまでコマンドが戻らないようにしたい場合は、-wコマンドラインオプションを使用できます。これにより、killallは待機します。

killall -w [process-name]

manページでは、このオプションについて次のように説明しています:

-w, --wait  
              終了したすべてのプロセスが死ぬのを待ちます。killallは、終了したプロセスがまだ存在するかどうかを1秒ごとにチェックし、残っているプロセスがない場合にのみ戻ります。信号が無視された場合、効果がなかった場合、またはプロセスがゾンビ状態のままである場合、killallは永遠に待機する可能性があることに注意してください。

結論

killallは初心者にとって簡単ではないかもしれませんが、それほど複雑でもありません。提供されるコマンドラインオプションを練習する必要があります。私たちはその大部分について説明しましたので、このチュートリアルは良い出発点になるはずです。これらが終わったら、manページに移動してコマンドについてさらに読むことができます。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。