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