Утилита ps#

Утилита ps отображает информацию о выбранных активных процессах в системе. По умолчанию ps выбирает все процессы с тем же «эффективным» идентификатором пользователя (euid=EUID), что и текущий пользователь, и связанные с тем же терминалом, что и вызывающий. Он отображает идентификатор процесса (pid=PID), терминал, связанный с процессом (tname=TTY), совокупное время процессора в формате [DD-]чч:мм:сс (time=TIME) и имя исполняемого файла (ucmd =CMD). По умолчанию вывод не отсортирован.

Синтаксис ps:

ps <options>

Утилита допускает применение опций с разным синтаксисом:

  • Опции UNIX: могут быть сгруппированы, употребляются с символом -;

  • Опции BSD: могут быть группированы, употребляются без символов;

  • Опции GNU: длинные опции, употребляются с символами --.

Часто используемые опции утилиты представлены в таблице ниже:

Опция

Описание

a

Отобразить статус процессов. При использовании этой опции в выводе ps будут указаны коды процессов, где, например, S будет соответствовать спящим процессам, а R – запущенным

u

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

x

Отобразить процессы, не связанные ни с одним запущенным экраном терминала. Сочетание опций aux (синтаксис BSD – опции, перед которыми не используются символы - и --) для ps позволит просмотреть всю информацию о процессах в системе

-e

Отобразить все запущенные процессы. При использовании только опции -e вывод ps будет содержать информацию обо всех процессах с полями по умолчанию (как при вызове ps: PID, TTY, TIME, CMD)

-f

Отобразить информацию о процессах в полноформатном выводе. Эту опцию можно комбинировать с другими опциями в синтаксисе UNIX для добавления дополнительных столбцов. Отображаются также аргументы команды. При использовании с опцией -L будут добавлены столбцы NLWP (количество потоков) и LWP (идентификатор потока)

-l

Включить длинный формат вывода. Данная опция предоставляет больше информации, чем опция -f

-o <format>

Указать определенный формат вывода. <format> здесь – это список, разделенный пробелами или запятыми, содержащий ключи из перечня спецификаторов стандартного формата, для указания отдельных столбцов при выводе

-p <pid-list>

Показать информацию по конкретным процессам, указанным в перечне <pid-list>. В <pid-list> также можно указать один <pid>, чтобы посмотреть информацию по конкретному процессу

--sort <spec>

Указать ключ и порядок сортировки. <spec> – это ключ из перечня стандартных спецификаторов формата (например, --sort=%mem). По умолчанию сортировка будет осуществляться от меньшего значения к большему. Для указания обратного порядка сортировки используйте - (например, --sort=-%mem)

Примеры использования#

Примеры использования ps:

  • Для просмотра всех запущенных процессов используйте команду:

    ps aux
    
  • Для просмотра всех запущенных процессов с наиболее подробным выводом используйте команду:

    ps auxww
    
  • Для получения информации об определенном PID процесса воспользуйтесь командой:

    ps -p <pid>
    

    Где <pid> – номер определенного процесса.

    Если необходимо просмотреть информацию в определенном формате, например, вывести только PPID определенного процесса, воспользуйтесь опцией -o:

    ps -o ppid= -p <pid>
    
  • Для просмотра информации о процессах с сортировкой, например, по потреблению памяти используйте команду:

    ps --sort size
    

    Где size - это ключ из перечня стандартных спецификаторов формата.