Как фильтровать STAT с помощью ps?

Я пытаюсь получить все процессы, для которых значение, соответствующее столбцу STAT, равно X.

Я сделал это с помощью awk ps -aux | awk {'if ($8 == "S") print $8" "$11'} ps -aux | awk {'if ($8 == "S") print $8" "$11'}

  • Есть ли правильный способ перечислить подкаталоги текущего каталога?
  • Как заставить все процессы работать на каждом ядре процессора в Ubuntu?
  • Вывод PS-файла в текстовый файл
  • Есть ли способ перечислить последние транзакции графического интерфейса в Linux?
  • Случайно установленное разрешение на запись на sudoers?
  • Как я могу сделать исполняемую программу всюду
  • Тем не менее, я хотел бы сделать это, не используя программу, отличную от ps. Есть ли способ?

  • ls -l без прав доступа к файлам
  • Как работает «-dc» в «cat / dev / urandom | tr -dc "01"?
  • Выполнять ту же команду с разными параметрами
  • Использовать пользовательскую конфигурацию без полномочий root для учетной записи root
  • Я застрял, подключившись к интернету через USB-приставку usb
  • Я не могу найти процесс отправки почты?
  • 2 Solutions collect form web for “Как фильтровать STAT с помощью ps?”

    Нет, вероятно, нет способа. ps имеет несколько вариантов выбора процесса, но (по крайней мере, один в моей системе) не имеет возможности фильтровать статус. Вы можете проверить страницу руководства ( man ps ) в своей системе для подтверждения.

    Обратите внимание, что он использует такие вещи, как awk , grep и т. Д., Чтобы найти интересующие вас фрагменты вывода – это обычный, ожидаемый способ использования оболочки Linux / Unix. Если вы делаете это часто и хотите сохранить повторную ввод текста, вы можете использовать функцию оболочки, определенную в вашем .bashrc или аналогичном, или поместить сценарий оболочки где-нибудь в $PATH (часто, $HOME/bin ).

    Например, функция оболочки, принимающая один аргумент (статус для поиска):

     ps_for_stat() { ps -aux | awk {'if ($8 == "'"$1"'") print $8" "$11'} } 

    Затем вы можете запустить: ps_for_stat S

    ps имеет ограниченные возможности фильтрации, но даже ps Linux с множеством опций не может фильтровать по статусу. Поэтому вам понадобится внешний инструмент фильтрации.

    Вы можете упростить набор параметров. -ax эквивалентен портативному -e для отображения всех процессов. Вы можете использовать -o вместо подсчета и выбора столбцов с awk.

     ps -e -o stat,command | grep '^S ' 
    Linux и Unix - лучшая ОС в мире.