为什么pgrep找不到这个过程?

Jas*_*nes 2 linux bash grep ps

如果我执行以下命令,这只是一个将永远等待的长命令

grep 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa abcd'
Run Code Online (Sandbox Code Playgroud)

然后pgrep -f找不到进程,如果我搜索abcd哪个包含在long命令的最后一段中.

ps auxww|grep abcd找到进程,但我不能在脚本中使用它,因为它也会查找grep进程self.

如果您只删除一个apgrep -f abcd可以看到该进程,但我有一个论点很长的命令,让我遇到了这个pgrep限制.

基于唯一字符串检查此类过程的正确方法是什么abcd

anu*_*ava 5

您编辑的命令可通过以下任一命令找到:

pgrep -f abcd
Run Code Online (Sandbox Code Playgroud)

甚至:

ps uxww | grep '[a]bcd'
Run Code Online (Sandbox Code Playgroud)