pgrep がプロセスを見つけられないのはなぜですか?

pgrep がプロセスを見つけられないのはなぜですか?

考慮する:

$ ps -ef | grep myprocess
root    7204     1 99 23:37 ?        00:02:36 ./myprocess
drew    7439  7266  0 23:38 pts/0    00:00:00 grep myprocess
$ pgrep myprocess

問題のプロセスは、upstart によって制御されるサービスです。

なぜpgrepこのプロセスが表示されないのですか?

答え1

最終的に、以下のオプションを追加することでこれを機能させることができました-f:

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

どれで:

$ pgrep -f myprocess
1234

関連情報