プロセスをpgrepできないのはなぜですか?


12
$ ps aux | grep -i ssh
USER      4364  0.0  0.0   9004  1032 ?        Ss   12:20   0:00 ssh -v -fND localhost:4000 USERNAME@SERVER-IP-ADDRESS

$ pgrep localhost:4000

なぜこれが機能しないのですか?

回答:


25

デフォルトでpgrep(1)は、プロセス名に対してのみ一致します。コマンドライン全体と照合する場合は、次の-fオプションを使用します。

$ pgrep -f localhost:4000

8

pgrepmanページをご覧ください。これは、一連の列を使用してpsを実行し、テキスト出力を取得するための単なるエイリアスではありません。実際に特定のフィールドで値を検索します。デフォルトでは、検索時にプロセス名のみを調べてPIDを返します。-fオプションを追加すると、コマンドライン全体を検索できます。また、プロセスが実行されている端末やグループIDの照合など、役立つ可能性のある他のいくつかのフィールドを検索することもできます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.