Командная строка Linux. Полное руководство (Шоттс) - страница 72

[me@linuxbox ~]$ ps

PID TTY TIME CMD

5198 pts/1 00:00:00 bash

10129 pts/1 00:00:00 ps

В этом примере команда вывела список с двумя процессами: процесс 5198 и процесс 10129 — программы bash и ps соответственно. Как можно заметить, по умолчанию ps выводит не очень много информации, только процессы, связанные с текущим сеансом. Чтобы увидеть больше, следует передать дополнительные параметры, но прежде чем мы сделаем это, давайте рассмотрим другие поля в выводе команды ps. Поле TTY — это сокращение от teletype (телетайп), оно содержит информацию об управляющем терминале процесса. В Unix в этом поле выводится тип терминала. Поле TIME содержит объем процессорного времени, потребленного процессом. Как видите, ни один из процессов не является слишком обременительным для компьютера.

Если добавить параметр x, можно получить более богатую информацию о происходящем в системе:

[me@linuxbox ~]$ ps x

PID TTY STAT TIME COMMAND

2799 ? Ssl 0:00 /usr/libexec/bonobo-activation-server –ac

2820 ? Sl 0:01 /usr/libexec/evolution-data-server-1.10 --

15647 ? Ss 0:00 /bin/sh /usr/bin/startkde

15751 ? Ss 0:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --

15754 ? S 0:00 /usr/bin/dbus-launch --exit-with-session

15755 ? Ss 0:01 /bin/dbus-daemon --fork --print-pid 4 –pr

15774 ? Ss 0:02 /usr/bin/gpg-agent -s –daemon

15793 ? S 0:00 start_kdeinit --new-startup +kcminit_start

15794 ? Ss 0:00 kdeinit Running...

15797 ? S 0:00 dcopserver –nosid

и еще много других процессов...

Дополнительный параметр x (обратите внимание на отсутствие дефиса) сообщает команде ps, что та должна вывести все процессы, независимо от того, какие терминалы (если таковые имеются) управляют ими. Символ ? в поле TTY указывает на отсутствие управляющего терминала. Таким образом, параметр x позволяет увидеть все процессы в системе, которыми мы владеем.

Так как в системе одновременно выполняется множество процессов, ps производит довольно длинные списки. Часто бывает полезно передать вывод ps команде less через конвейер, чтобы его проще было просматривать. Некоторые комбинации параметров приводят к выводу очень длинных строк, поэтому нелишним будет также распахнуть окно эмулятора терминала на весь экран.

В этом примере в выводе появился новый столбец — STAT. Название STAT — это сокращение от state (состояние), столбец содержит информацию о текущем состоянии процесса, как показано в табл. 10.1.

Таблица 10.1. Состояния процессов