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

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

  • Режим Vi или режим emacs во всей системе
  • Заменить требуемые утверждения автозагрузкой в ​​файле .emacs для повышения производительности
  • XEmacs: загрузить все файлы в /home/barry/.emacs_barry
  • специфичные для режима emacs keybindings
  • emacs, Как скопировать регион и оставить его выделенным?
  • emacs выделенное окно завершения
  • Emacs не откроет файл в репозитории Bazaar
  • Как найти резервные файлы 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 } .

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

    Interesting Posts

    Использование virtio на QEMU без KVM

    Не удается запустить скрипт python при загрузке

    Замена очереди теперь, когда пакет не принимает входные файлы?

    Как определить, является ли вход из аргумента, файла или терминала

    Возможное состояние гонки при подключении плагинов для наушников

    Shellscript! Синтаксическая ошибка, неожиданно "("

    Мост интерфейсов с VLAN на основе точки доступа на базе Linux

    Командная строка Fedora 14: назначить права доступа к папке

    Как настроить Linux Mint 18.2 для Captive WiFi Access Point без доступа в Интернет

    Есть ли причина, по которой существуют разрешения владельца? Достаточно ли групповых разрешений?

    Gsub поддерживать строку между ними;

    Как переместить строку в текстовый файл вверх или вниз на одну строку?

    Как отключить локальную запись файлов?

    Вывод команды Pipe на Yad, а также запись результата в файл журнала

    Круговая зависимость в обновлении версии Ubuntu

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