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

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

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 } .

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

  • Отслеживание работы функции в Emacs
  • настройка размера окон emacs в twm, в зависимости от сеанса vnc
  • Хэш-файл Emacs temp dot не существует
  • Как настроить Emacs для использования «ispell» в Mac OS X?
  • Измените файлы .docx с помощью Emacs?
  • Принуждение emacs для запуска с помощью `-nw` при вызове из терминала
  • Emacs: автоматически переключается в режим char при переключении в анси-терминальное окно
  • zsh: Повторять каждое утверждение?
  • Отключить раздражающее выделение комментариев в emacs
  • Emacs - странные пробелы
  • Совершенно пиксельные шрифты в Emacs
  • Linux и Unix - лучшая ОС в мире.