実行中のすべてのプロセスのリストを見つけ、正規表現を使用してコマンド列をフィルタリングする方法。
ps aux
は実行中のすべてのプロセスのリストを取得するために使用するツールですが、名前に「pentaho」を含むすべてのプロセスに対して対応するコマンド列をフィルタリングするだけです。正規表現は次のとおりです。
(?i).*pentaho.*
(大文字と小文字を区別しない)
答え1
ほとんどのLinuxおよびUnixインストールには、pgrep
この名前のコマンドがあります。コマンド名p
で使用する特定の正規表現がサポートされていることをprocess
確認するには、マニュアルページを確認してください。pgrep
この-f
オプション(full command line
単純なプロセス名ではなく一致)が役に立つことがよくあります。
pkill
プロセスを検索する理由は通常、プロセスの1つにシグナルを送信したいので、呼び出される同伴コマンドがあります。pkill
これには、通常のコマンドと同様に、送信する信号を指定する追加のオプションがありますkill
。
答え2
ps auxコマンドとgrepコマンドを使用して、正規表現に基づいて出力をフィルタリングできます。
ps aux | grep -i ".*pentaho.*"