Что означает "ps -ef|grep processname"?

Я хочу точно знать, что это за конкретная команда

ps -ef|grep processname

средства и как это работает. Я знаю, что это должно быть связано с processname который мы хотим найти, но я не понимаю префиксную часть; что делать -ef и |(труба) делает и как делает -ef|grep в целом работа. Немного погуглив, я нашел grep используется для целей поиска, но я хотел бы получить простое объяснение того, как работает этот параметр команды.

-e и -f есть варианты для ps команда, а каналы принимают выходные данные одной команды и передают их в качестве входных данных другой. Вот полная разбивка этой команды:

  • ps - список процессов
  • -e - показывать все процессы, а не только те, которые принадлежат пользователю
  • -f - отображение процессов в полном формате (более подробно, чем по умолчанию)
  • command 1 | command 2 - передать выходные данные команды 1 в качестве входных данных для команды 2
  • grep поиск линий, содержащих шаблон
  • processname - шаблон для grep для поиска в выходных данных ps -ef

Так что в целом

ps -ef | grep processname

означает: ищите строки, содержащие processname в подробном обзоре / моментальном снимке всех текущих процессов и отобразите эти строки