为什么 grep 命令被回显

为什么 grep 命令被回显

我目前有类似的东西。我正在尝试查找具有特定名称的进程

>:~# ps | grep avahi-daemon
12499 avahi     3048 S    avahi-daemon: running [BlahBlah.local]
12500 avahi     3048 S    avahi-daemon: chroot helper
12538 root      2672 S    grep avahi-daemon  <---What is this

第三行是什么?为什么会这样说grep avahi-daemon

答案1

它被返回,因为它与你的 grep 模式匹配。

具体来说,所有三行都包含单词“avahi-daemon”,并且按照您的要求,grep 解析了 的输出ps,并发现除了两个实际名为 avhai-daemon 的进程之外,还有一个正在运行的进程 ,grep avahi-daemon它匹配。如果您确实不想返回它,则需要在 grep 中添加“不匹配”子句,并告诉它您希望它搜索包含 avahi-daemon 但不包含 grep 的行。

答案2

从 ps 输出中排除 grep 的一种方法是不运行 grep。

您可以使用 -C 开关过滤 ps 输出,而不是通过管道传输其输出。

要仅列出 avahi-daemon 进程,您可以运行以下命令:

ps -C avahi 守护进程

相关内容