ps
からの出力は次のとおりです。
$ ps aux | grep blob
ubuntu 4286 0.0 0.1 34748 9592 ? S Jan14 0:00 /usr/bin/python /usr/local/bin/pynt start_blob_reader
ubuntu 4287 0.0 0.1 34748 9596 ? S Jan14 0:00 /usr/bin/python /usr/local/bin/pynt start_blob_reader
ubuntu 4288 0.0 0.0 4444 656 ? S Jan14 0:00 /bin/sh -c python -m blob_manager blob
ubuntu 4289 1.2 0.2 65512 20668 ? S Jan14 1974:18 python -m blob_manager blob
ubuntu 4290 0.0 0.0 4444 656 ? S Jan14 0:00 /bin/sh -c python -m blob_manager blob
ubuntu 4291 1.2 0.2 65404 20624 ? S Jan14 1978:24 python -m blob_manager blob
ubuntu 19849 0.0 0.0 10464 896 pts/0 S+ 05:43 0:00 grep blob
シェルスクリプトを使用してこれらのジョブを強制終了する最も簡単な方法は何ですか(19849
はgrep
プロセス自体であるため)。
bash
またはzsh
のどちらでも問題ありません。
pkill
を使用します:
pkill blob
これにより、パターンblob
に一致するすべてのプロセスが強制終了されます。
別のアプローチはkillall
ですが、パターンが正規表現として解釈されるように、-r
で呼び出す必要があります。
killall -r blob
すべてのPIDを取得し、すべてを強制終了する必要があります。
kill $(ps -ef|grep -v grep |grep Java |awk '{print $2}'|tr '\n' ' '); echo
または、より冗長にします。
netikras@netikras-PC ~ $ #ps -ef |grep -v grep |grep Java |while read line; do echo "$line" |awk '{$1=$3=$4=$5=$6=$7=""; print "Killing: "$0"\n"}'; kill $(echo $line|awk '{print $2}') && echo KILLED || echo FAILED ; done
netikras@netikras-PC ~ $