複数のプロセスを終了する方法

複数のプロセスを終了する方法

終了するプロセスのPIDを見つけるには、次のようにします。

pgrep <process command>

その後、killコマンドを使用して次のように殺します。pgrep <process command>

kill <PID>

これらのコマンドをPIDが終了するかPIDが返されるように1つにまとめることはできますかpgrep <process command>?または、コマンド名で複数のプロセスを終了する方法はありますか?

それは次のとおりです。kill(pgrep <name of process>)

答え1

pkillが利用可能です:

pkill httpd

プロセス置換を使用することもできます(明確ではありません)。

kill $(pgrep command)

以下を使用できますxargs

pgrep command | xargs kill

答え2

killallたとえば、次のものを使用することもできます。

killall firefox

SIGTERMすべてのプロセスに送信されますfirefox

答え3

はい、bash機能を使用して出力を繰り返すことができます。

$ for proc in $(pgrep <process command>); do kill $proc; done

答え4

特に、スタック方式でスクリプトを実行するときにプロセス名を指定するのは私には適していません。したがって、私は次の簡単なコマンドを使用します。

ps -eaf | grep -i script_hint (or whatever condition is) | awk '{print $2}' | xargs kill -15

関連情報