更优雅ps aux | grep rep不起作用

我正在运行命令: ps -ef | grep [p]ts/1 ps -ef | grep [p]ts/1

结果是:

root 13820 1733 0 14:19 ? 00:00:00 sshd: root@pts/1 root 13822 13820 0 14:19 pts/1 00:00:00 -bash root 15847 13822 0 15:32 pts/1 00:00:00 ps -ef root 15848 13822 0 15:32 pts/1 00:00:00 grep [p]ts/1

为什么它返回grepps

PS单引号和双引号给了我相同的结果。 我能够使用grep -v grep工作得到没有“grep”的输出,但我想用更优雅的方式。

grep只显示符合正则expression式的行。

您显示的每个输出行实际上都具有文本“pts / 1”,或许不是您期望的那样,即在那些“意外”行的控制tty列中。

正如thrig的评论所说的,你可能使用pgrep更好。