
そのため、次のようなコマンドを実行しています。
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 コマンド名