8.4.1. Команда ps
8.4.1. Команда ps
Когда я заглянул в man-страницу, посвященную команде ps, я был поражен, как много у нее разных опций. Как оказалось, GNU-версия этой программы, входящая в состав Linux, поддерживает опции в стиле трех разных типов UNIX. Опции в стиле Unix98 состоят из одного или нескольких символов, перед которым(и) должен стоять дефис. Опции в стиле BSD имеют аналогичный вид, только используются без дефиса. Опции, характерные только для GNU-версии представляют собой слово, перед которым должно стоять два дефиса. Их нельзя объединять, как однобуквенные опции двух предшествующих типов. Таким образом, существует три равноправных формата задания этой команды:
ps [-опции]
ps [опции]
ps [-- длинное_имя_опции [-- длинное_имя_опции]…]
При этом опции разных типов нельзя употреблять в одной команде. Дадим краткую характеристику наиболее важных опций.
Первая группа опций регулирует вывод команды. Независимо от наличия опций этой группы команда ps выдает для каждого процесса отдельную строку, но содержимое этой строки может быть разным. В зависимости от заданных опций могут присутствовать следующие поля:
• USER - имя владельца процесса;
• PID - идентификатор процесса в системе;
• PPID - идентификатор родительского процесса;
• %CPU - доля времени центрального процессора (в процентах), выделенного данному процессу;
• %MEM - доля реальной памяти (в процентах), используемая данным процессом;
• VSZ - виртуальный размер процесса (в килобайтах);
• RSS - размер резидентного набора (количество 1K-страниц в памяти);
• STIME - время старта процесса;
• TTY - указание на терминал, с которого запущен процесс;
• S или STAT - статус процесса;
• PRI - приоритет планирования;
• NI - значение nice (см. описание команды nice ниже);
• TIME - сколько времени центрального процессора занял данный процесс;
• CMD или COMMAND - командная строка запуска программы, выполняемой данным процессом; а также и другие поля, полный список которых приведен на man-странице, посвященной команде ps.
Значения, выводимые в большинстве этих полей вы поймете без дополнительных пояснений. В поле Статус процесса, как уже говорилось выше, могут стоять следующие значения:
• R - выполнимый процесс, ожидающий только момента, когда планировщик задач выделит ему очередной квант времени;
• S - процесс "спит";
• D - процесс находится в состоянии подкачки на диске;
• T - остановленный процесс;
• Z - процесс-зомби.
Рядом с указателем статуса могут стоять дополнительные символы из следующего набора:
• W - процесс не имеет резидентных страниц;
• ‹ - высоко-приоритетеный процесс;
• N - низко-приоритетный процесс;
• L - процесс имеет страницы, заблокированные в памяти.
Вторая группа опций регулирует то, какие именно процессы включаются в вывод команды. Чтобы получить список всех процессов надо использовать команду ps с опциями ax или -A. Вывод в этих двух случаях отличается только в поле CMD: в первом случае выдается полная командная строка запуска программы, а во втором - только имя запущенной программы.
Описание всех опций программы ps здесь привести невозможно. Поэтому приведем только несколько примеров ее применения, которые покажут, как пользоваться этой командой в типичных ситуациях.
Для того чтобы увидеть все процессы в системе, используя стандартную форму вывода:
[user]$ ps -e
Можно к той же команде добавить опцию -o, после которой указать через запятую, какие именно поля вы хотите видеть в выводе команды:
[user]$ ps -eo pid,user,cmd
Для того, чтобы увидеть все процессы в системе, используя форму вывода BSD-систем:
[user]$ ps ax
Для того, чтобы увидеть все процессы в системе, с применением графического отображения отношения "предок-потомок":
[user]$ ps -ef
Впрочем, для того, чтобы увидеть "лес" деревьев "предок-потомок", лучше воспользоваться очень интересным аналогом команды ps -ef - командой pstree.
Для того, чтобы увидеть, сколько % ЦПУ и памяти занимают запущенные вами процессы:
[user]$ ps -u
Чтобы узнать приоритет процесса и значение nice, воспользуйтесь опцией -l:
[user]$ ps -l
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
3.6.4. Команда help
3.6.4. Команда help Выше уже упоминалась система помощи по встроенным командам оболочки bash - команда help. Если ввести в командной строке help без параметров, вы получите список всех встроенных команд оболочки. Если ввести команду help name, где name - имя одной из этих команд, то вы
4.6.3. Команда cat
4.6.3. Команда cat Команда cat часто используется для создания файлов (хотя можно воспользоваться и командой touch). По команде cat на стандартный вывод (т. е. на экран) выводится содержимое указанного файла (или нескольких файлов, если их имена последовательно задать в качестве
4.6.4. Команда cp
4.6.4. Команда cp Хотя для копирования файлов иногда пользуются командой cat, но в Linux существует для этого специальная команда cp. Ее можно применять в одной из двух форм:[user]$ cp [options] source destination[user]$ cp [options] source_directory new_directoryВ первом случае файл или каталог source копируется,
4.6.5. Команда mv
4.6.5. Команда mv Если вам необходимо не скопировать, а переместить файл из одного каталога в другой, вы можете воспользоваться командой mv. Синтаксис этой команды аналогичен синтаксису команды cp. Более того, она сначала копирует файл (или каталог), а только потом удаляет
5.4.3 Команда cat
5.4.3 Команда cat Мы уже рассматривали кратко команду cat в предыдущем разделе. В данном разделе эта команда интересует нас в основном потому, что чаще всего она работает как раз с входным и выходным потоками. По умолчанию выход команды cat направляется в выходной поток. Чтобы
5.10. Команда sh
5.10. Команда sh Вы всегда можете запустить новый экземпляр оболочки bash, дав команду bash или sh. При этом можно заставить новый экземпляр оболочки выполнить какой-то скрипт, если передать имя скрипта в виде аргумента команды bash. Так, для выполнения скрипта myscript надо дать
8.4.1. Команда ps
8.4.1. Команда ps Когда я заглянул в man-страницу, посвященную команде ps, я был поражен, как много у нее разных опций. Как оказалось, GNU-версия этой программы, входящая в состав Linux, поддерживает опции в стиле трех разных типов UNIX. Опции в стиле Unix98 состоят из одного или нескольких
Команда
Команда Команда используется для выполнения SQL-запросов к базе данных Важно не путать команду, которая является СОМ-объектом, с текстом команды, который представляет собой строку. Обычно команды используют для описания данных, например для создания таблицы и
5.2.7.2. Команда SET
5.2.7.2. Команда SET SET var_name = expr [, var_name = expr] …Инструкция SET в сохраненных подпрограммах представляет собой расширенную версию общей инструкции SET. Вызванные переменные могут быть объявлены внутри подпрограммы или глобальными переменными системы.Инструкция SET в сохраненных
3.2. Команда at
3.2. Команда at Команда at позволяет передавать задания демону cron для одноразового выполнения в назначенное время. Выдавая задание, команда at сохраняет в отдельном файле как его текст, так и все текущие переменные среды. Заметим, что команда crontab не делает этого. По умолчанию
5.3. Команда cat
5.3. Команда cat Команда cat довольно проста, но универсальна. Эту команду удобно применять как для отображения файла, так и для его создания, а также при отображении файлов, содержащих управляющие символы. Используя команду cat, следует учитывать, что процесс вывода не
24.1.1. Команда pwd
24.1.1. Команда pwd Эта команда отображает текущий каталог:$
24.1.2. Команда set
24.1.2. Команда set Команда set рассматривалась при изучении процесса отладки для подключения и отключения опций. Эту команду можно также использовать для передачи аргументов в пределах сценария. Опишем, как происходит этот процесс. Предположим, что сценарий должен