Я запускаю команду: 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
Почему он возвращается grep
и ps
?
P.S. Одинарные и двойные кавычки дают одинаковые результаты. Я могу получить вывод без "grep", используя grep -v grep
работает, но я хочу использовать более элегантный способ.
grep
просто показывает строки, соответствующие заданному вами регулярному выражению.
Каждая из отображаемых вами выходных строк действительно имеет текст «pts / 1», возможно, просто не там, где вы ожидали, а именно в столбце управляющего tty в этих «неожиданных» строках.
Как говорится в комментарии трига, вам, вероятно, лучше с pgrep
.