pgrepを使用してシェルスクリプトプロセスを見つける方法

pgrepを使用してシェルスクリプトプロセスを見つける方法

pgrepCentOS端末で実行されているプロセスを終了するコマンドを使用したいと思います。私は試した:

pgrep fedora-proxy-k8s-postgresql | xargs -r kill -9

バックグラウンドで実行されるbashスクリプトなので、プロセスが見つかりません。

➜  pydolphin git:(tencent-cloud) ps aux|grep k8s-pos
root     14131  0.0  0.0 113288  1084 ?        SN   01:35   0:00 bash ./fedora-proxy-k8s-postgresql.sh

プロセスを見つけて終了するにはどうすればよいですかpgrep?それとも命令を使用する必要がありますかps

ベストアンサー1

努力する:

pgrep -af 'fedora-proxy-k8s-postgresql'

-f設定すると、このパターンはコマンドライン全体と一致します。

プロセスを終了する必要がある場合:

pkill -9 -f 'fedora-proxy-k8s-postgresql'

@aviroのコメントで述べたように、pkillこれは慎重に使用する必要があります。vi fedora-proxy-k8s-postgresql.shコマンドラインを実行する他のプロセスがある場合、そのプロセスもこのパターンpkillと一致して終了します。したがって、終了するプロセスがコマンドラインがそのパターンと一致する唯一のプロセスであることを確認または-f 'bash ./fedora-proxy-k8s-postgresql.sh'実行する前に、より正確なパターンを作成することをお勧めしますpkill

詳細はマンページを参照してくださいpgrep

おすすめ記事