web-dev-qa-db-ja.com

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

使用を停止するプロセスのPIDを見つけるには:

_pgrep <process command>
_

次に、killコマンドを使用して、_pgrep <process command>_から返されたPIDを強制終了します

_kill <PID>
_

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

次のようなもの:kill(pgrep <name of process>)

22
blue-sky

あなたはpkillを使うことができます:

pkill httpd

プロセス置換を使用することもできます(ただし、これはそれほど明確ではありません)。

kill $(pgrep command)

そして、あなたはxargsを使いたいかもしれません:

pgrep command | xargs kill
30
MatthewRock

killallも使用できます。

killall firefox

SIGTERMをすべてのfirefoxプロセスに送信します。

17
Byte Commander

はい、bash機能を使用して出力をループできます。

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

配列で複数のプロセスを強制終了できます。この場合、$ip$hostnameまたは同様のオプションを指定できます。

ip=your_ip_address; declare -a arr=$(ps aux|grep tail|grep $ip|awk '{print $2}'); for pid in ${arr[@]}; do kill -9 $pid; done;