複数のプロセスをまとめてkillする

プロセスが大量に発生して重くなっているときにプロセスをまとめて、もしくは様子見に10プロセス程killしたりするときに使えます。
10プロセスkill、消えたのを確認してまた10プロセスkill、というようなことができます。

フィルター(条件)をパイプで繋いでいくやり方は、条件を付けたり外したりが簡単にできるのでトラブルシューティングで威力を発揮します。


プロセス名を指定してまとめてkillする

kill `ps -ef | grep ProcessName | awk '{print $2;}'`

プロセス名を指定してプロセスIDの大きい順にkillする

kill `ps -ef | grep ProcessName | awk '{print $2;}' | sort -nr`

プロセス名を指定して最初の10プロセスをkillする

kill `ps -ef | grep ProcessName | awk '{print $2;}' | head -10`

コマンドの内容

与えられたプロセスIDをkillする

kill `...`

プロセス一覧を表示する

ps -ef

プロセス名 ProcessName を持つ行を取り出す

grep ProcessName
各行の2列目(プロセスID)を取り出す
awk '{print $2;}'
数値の大きい順に並べ替える
sort -nr
先頭から10行を取り出す
head -10