Linux

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

Иллюстрация экрана компьютера, показывающего окно терминала и Linux

Команда ps создает список текущих запущенных процессов на вашем компьютере. Команда ps обычно используется вместе с командой grep и более или менее командами; Эти дополнительные команды помогают фильтровать и разбивать на страницы выходные данные из ps, которые часто могут быть довольно длинными.

Как использовать команду «ps»

Иллюстрация экрана компьютера, показывающего окно терминала и Linux
Лифуайр / Хилари Эллисон

По своему собственному, псу команда показывает запущенные процессы от пользователя , запустившего его в окне терминала. Для вызова ps просто наберите следующее:

п.с.

Вывод покажет строки данных, содержащие следующую информацию:

  • PID
  • TTY
  • Время
  • команда

PID — это идентификатор процесса, который идентифицирует запущенный процесс. TTY — это тип терминала. 

По своей собственной, пс команда весьма ограничена. Вы, вероятно, хотите увидеть все запущенные процессы. Для просмотра всех запущенных процессов используйте одну из следующих команд:

пс -А 
ps -e

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

ps -d

Так что же такое лидер сессии? Когда один процесс запускает другие процессы, он является лидером сеанса всех других процессов. Итак , представьте процесс A пинает процесс B и процесс C . Процесс B стартует процесс D и процесс C начинает процесс Е . Когда список всех процессов , кроме лидеров сеансов вы увидите , B , C , D , и Е , но не A .

Отмените любой из выбранных вами вариантов, используя ключ -N . Например, чтобы увидеть только лидеров сеансов, выполните следующую команду:

ps -d -N

-N не полезно при использовании с -e или -A переключатели , как он не покажет ничего.

Чтобы увидеть только процессы, связанные с этим терминалом, выполните следующую команду:

Тихоокеанское стандартное время

Если вы хотите увидеть все запущенные процессы, используя следующую команду:

пс

Выбор конкретных процессов с помощью команды ps

Верните конкретные процессы с помощью команды ps, и существуют различные способы изменить критерии выбора.

Например, если вы знаете идентификатор процесса, вы можете просто использовать следующую команду:

ps -p <pid>

Вы можете выбрать несколько процессов, указав несколько идентификаторов процессов следующим образом:

ps -p "1234 9778"

Вы также можете указать их, используя список через запятую:

ps -p 1234,9778

Скорее всего, вы не будете знать идентификатор процесса, и поиск по команде будет проще. Для этого используйте следующую команду:

ps -C <команда>

Например, чтобы увидеть, работает ли Chrome, вы можете использовать следующую команду:

PS-C Chrome

Другие способы фильтрации результатов по группам. Поиск по имени группы, используя следующий синтаксис:

ps -G <имя группы> ps --Group <имя группы>

Например, чтобы узнать все процессы, выполняемые группой учетных записей, введите следующее:

ps -G "Счета" ps --Группа "Счета"

Вы также можете выполнять поиск по идентификатору группы вместо имени группы, используя строчную букву «g», как показано ниже:

ps -g <groupid> ps --group <groupid>

Для поиска по списку идентификаторов сеансов используйте следующую команду:

ps -s <sessionid>

Или используйте следующее для поиска по типу терминала.

ps -t <sessionid>

Чтобы найти все процессы, запущенные конкретным пользователем, попробуйте следующую команду:

ps U <список пользователей>

Например, чтобы найти все процессы, запущенные gary, выполните следующее:

пс у "гэри"

Эти выходные данные показывают человека, чьи учетные данные используются для запуска команды. Например, если вы вошли в систему как gary и выполнили приведенную выше команду, она покажет все команды, которые вы выполнили.

Если вы вошли в систему как Tom и используете sudo для запуска команды, то приведенная выше команда покажет, что команда Tom выполняется gary, а не Tom .

Чтобы ограничить список только процессами, которые действительно выполняются gary, используйте следующую команду:

пс -У "гэри"

Форматирование вывода команды ps

ps -ef

По умолчанию вы получаете те же четыре столбца, когда используете команду ps :

  • PID
  • TTY
  • Время
  • команда

Вы можете получить полный список, выполнив следующую команду:

ps -ef

-E , как вы знаете, показывает все процессы и е или -f показывает полную информацию.

Возвращаются следующие столбцы:

  • Идентификатор пользователя
  • PID
  • PPID
  • С
  • STime
  • TTY
  • Время
  • команда

Идентификатор пользователя — это человек, который выполнил команду. PID — это идентификатор процесса команды. PPID — это родительский процесс, который запускает команду.

С колонка показывает количество детей процесс имеет. STime — это время начала процесса. TTY — это терминал, время — это количество времени, которое потребовалось для выполнения, а команда — это команда, которая была запущена.

Вы можете получить еще больше столбцов, используя следующую команду:

ps -eF

Это возвращает следующие столбцы:

  • UID
  • PID
  • PPID
  • С
  • SZ
  • RSS
  • PSR
  • STime
  • TTY
  • Время
  • команда

Дополнительные столбцы: SZ, RSS и PSR. SZ — размер процесса, RSS — реальный размер памяти, а PSR — процессор, которому назначена команда.

Укажите пользовательский формат, используя следующий переключатель:

ps -e --format <формат>

Доступны следующие форматы:

  • % cpu : загрузка процессора
  • % mem : процент использования памяти
  • args : команда со всеми аргументами
  • c : загрузка процессора
  • cmd : команда
  • comm : только имя команды
  • cp : загрузка процессора
  • cputime : время процессора
  • egid : эффективный идентификатор группы
  • egroup : эффективная группа
  • etime : истекшее время
  • euid : эффективный идентификатор пользователя
  • euser : эффективный пользователь
  • gid : идентификатор группы
  • группа : название группы
  • pgid : идентификатор группы процессов
  • pgrp : группа процессов
  • ppid : идентификатор родительского процесса
  • начало : время начала процесса
  • sz : размер в физических страницах
  • thcount : потоки, принадлежащие процессу
  • время : совокупное время
  • uid : идентификатор пользователя
  • uname : имя пользователя

Есть еще много вариантов, но это наиболее часто используемые.

Чтобы использовать форматы, введите следующее:

 ps -e --format = "uid uname cmd time"

Смешивать и сочетать предметы, как вы хотите, чтобы они были.

Сортировка вывода

Чтобы отсортировать вывод, используйте следующую запись:

ps -ef --sort <sortcolumns>

Возможны следующие варианты сортировки:

  • cmd : имя исполняемого файла
  • pcpu : загрузка процессора
  • флаги : флаги
  • pgrp : идентификатор группы процессов
  • cutime : совокупное время пользователя
  • cstime : совокупное системное время
  • время : пользовательское время
  • pid : идентификатор процесса
  • ppid : идентификатор родительского процесса
  • размер : размер
  • uid : идентификатор пользователя
  • пользователь : имя пользователя

Опять же, есть больше доступных вариантов, но это самые распространенные.

Похожие посты
Linux

8 лучших окружений рабочего стола Linux

AndroidIphone и ipadLinuxWindows

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

LinuxКак сделать

Что такое Swappiness в Linux? (и как это изменить)

LinuxКак сделать

Как использовать команду ls для вывода списка файлов и каталогов в Linux