「コマンド名」でpkillする方法は?

「コマンド名」でpkillする方法は?

そのため、次のようなコマンドを実行しています。

 COMMANDNAME -PARAMETERS

ところで..なぜ「pkill」で殺すことはできないのですか?私は努力しています:

 pkill -9 "COMMANDNAME -PARAMETERS"

ただし、「COMMANDNAME -PARAMETERS」プロセスは終了しません。なぜ?

答え1

例に報告されているコマンドライン全体(コマンド+引数)を一致させる必要がある場合は、次の-fオプションを使用する必要があります。

pkill -9 -f "COMMANDNAME -PARAMETERS"

マニュアルページによると:

  -f     The pattern is normally only matched against the process name.
          When -f is set, the full command line is used.

答え2

~からマニュアルページ:

pgrepは、現在実行中のプロセスを検索し、標準出力の選択基準に一致するプロセスIDを一覧表示します。すべての基準が一致する必要があります。 pkillはこれらのIDを殺します。

したがって、「commandname -parameters」は一致しません。あなたが持っている必要があるのは次のとおりです

pkill -9 コマンド名

関連情報