Подсчитайте количество процессов с ps -Af

Мне нужно подсчитать количество процессов emacs на удаленном компьютере, используя команду ps -Af. Где я даже начинаю?

  • Emacs: сделать часть буфера readonly
  • Могу ли я emacs автоматически отступать весь мой код после того, как все написано?
  • Синтаксис строки для макроса kbd в Emacs
  • Клавиши управления и увеличения / уменьшения в терминале для использования emacs
  • Настройка примечаний в режиме emacs org
  • Вставить вкладку вкладок в Emacs
  • Работа с экраном и emacs
  • Как я могу получить lastf-mode для работы с сервером / клиентом emacs?
  • 4 Solutions collect form web for “Подсчитайте количество процессов с ps -Af”

    ps -Af – не лучший подход.

    Опция f является излишней и может приводить к ложному срабатыванию, если процессы non emacs используют emacs или строку, содержащую ее как один из их параметров, не говоря уже о (маловероятном) случае пользователя с именем emacs.

    Я бы предложил использовать эту более простую команду:

     pgrep emacs | wc -l 

    Как сказал Хеннес, вы можете использовать « ps -AF | grep emacs | wc -l », чтобы сделать это. Но у вас также будет собственная команда. Чтобы избавиться от этой команды, вы можете нам « grep -v » (или --inverted-match ) отфильтровать команды, которые вы не хотите считать. Таким образом, это будет выглядеть так: ps -AF | grep emacs | grep -v grep | wc -l ps -AF | grep emacs | grep -v grep | wc -l

    вы можете сделать ps -C emacs --no-heading | wc -l ps -C emacs --no-heading | wc -l

    Процессы вывода ps -C command по имени команды

    EDIT: ps --help очень интересен

    Начните с первых принципов.

    Начните с определения того, что именно команда, которую вы попросили использовать, и как работают указанные параметры ( -Af ). Для этого читайте man ps :

    -A Выберите все процессы.
    -f Сделайте полноформатный листинг. Этот параметр можно комбинировать со многими другими параметрами в стиле UNIX, чтобы добавить дополнительные столбцы.

    Таким образом, отправной точкой является вывод всех процессов, выполняемых для вашего пользователя, перечисленных в полном формате. Запустите команду, чтобы увидеть полный вывод, прежде чем пытаться выполнить какую-либо обработку:

     ps -Af 

    Чтобы подсчитать процессы emacs , вам нужно будет обрабатывать выходные данные с помощью инструмента установки для обработки вывода и / или подсчета соответствующих совпадений. grep – хороший вариант, но для эффективности и простоты я бы использовал awk :

     ps -Af | awk '/emacs/ && !/awk/ { a++ } END { print a }' 

    Это ищет шаблон /emacs/ , исключает шаблон самого поиска !/awk/ , увеличивает совпадения { a++ } а затем печатает итоговый { print a } .

    Это требует только одного канала и элегантно справляется с проблемой не возвращать процесс поиска в ваш счет.

    Linux и Unix - лучшая ОС в мире.