1つのpythonスクリプトを除くすべてのpythonプロセスをbashから強制終了するにはどうすればよいですか。(名前は知っていますが、pidは変更されることがあります)。
私は一種の必要がありますpkill -f "python"
が、Python固有のスクリプトを除外しています。
お知らせ下さい。
1つのpythonスクリプトを除くすべてのpythonプロセスをbashから強制終了するにはどうすればよいですか。(名前は知っていますが、pidは変更されることがあります)。
私は一種の必要がありますpkill -f "python"
が、Python固有のスクリプトを除外しています。
お知らせ下さい。
回答:
ps aux |grep python |grep -v 'pattern_of_process_you_dont_want_to_kill' |awk '{print $2}' |xargs kill
更新:コメントで要求された段階的な説明
ps aux |grep python
- python
パターンに 一致するすべてのプロセスを表示するgrep -v 'pattern_of_process_you_dont_want_to_kill'
-殺したくないプロセスを除外する awk '{print $2}'
-出力の2番目のフィールドを表示します。これはPIDです。 xargs kill
- kill
各入力引数(PID)にコマンドを適用します。xargs
コマンドに慣れていない場合は、すぐに理解できなくても心配しないでください。それは初めてかなりトリッキーに見えるかもしれません。私はその使用法の非常に簡単な例を投稿しました。
awk '{print $2}'
-出力の2番目のフィールドをps
出力しますPID
。現在の場合はです。それぞれにコマンドをxargs
適用kill
しますPID