PKILL(1) Справочник основных команд FreeBSD PKILL(1)
НАЗВАНИЕ
pgrep, pkill -- найти процессы по имени с возможной отправкой им сигнала
СИНТАКСИС
pgrep [-LSfilnovx] [-F pidfile] [-G gid] [-M дамп] [-N система] [-P ppid]
[-U uid] [-d разделитель] [-g pgrp] [-j jid] [-s sid] [-t tty]
[-u euid] шаблон ...
pkill [-сигнал] [-ILfinovx] [-F pidfile] [-G gid] [-M дамп] [-N система]
[-P ppid] [-U uid] [-g pgrp] [-j jid] [-s sid] [-t tty] [-u euid]
шаблон ...
ОПИСАНИЕ
Команда pgrep производит поиск в таблице процессов работающей системы и
выводит идентификаторы процессов, удовлетворяющих заданному в командной
строке критерию.
Команда pkill производит поиск в таблице процессов работающей системы и
посылает сигнал всем процессам, удовлетворяющим заданному в командной
строке критерию.
Имеются следующие опции:
-F pidfile Ограничить совпадения процессом, чей идентификатор про-
цесса (PID) хранится в файле pidfile.
-G gid Ограничить совпадения процессами с идентификатором дей-
ствительной группы (real group ID) из разделённого запя-
тыми списка gid.
-I Запросить подтверждение на отправку сигнала каждому про-
цессу.
-L Файл pidfile, передаваемый в качестве параметра опции -F,
должен быть заблокирован с использованием системного
вызова flock(2) или создан с помощью pidfile(3).
-M дамп Извлечь значения, связанные со списком имён (namelist),
из указанного дампа памяти ядра дамп, вместо памяти рабо-
тающей в текущий момент системы.
-N система Извлечь список имён из указанной системы, вместо исполь-
зуемого по умолчанию образа ядра, с которого произведена
загрузка.
-P ppid Ограничить совпадения процессами, идентификаторы роди-
тельских процессов (PPID) которых перечислены в разделён-
ном запятыми списке ppid.
-S Искать также среди системных процессов (нитей ядра).
-U uid Ограничить совпадения процессами с идентификаторами дей-
ствительного пользователя (real user ID), находящимися в
разделённом запятыми списке uid.
-d разделитель Использовать заданный разделить для выводимых идентифика-
торов процессов. По умолчанию используется символ новой
строки. Эта опция может быть использована только с
командой pgrep.
-f Производить поиск совпадений по полному списку аргумен-
тов. По умолчанию проверяются только имена процессов.
-g pgrp Ограничить совпадения списком процессов с идентификато-
рами группы процессов (process group ID) из разделенного
запятыми списка pgrp. Ноль означает идентификатор группы
процессов работающей команды pgrep или pkill.
-i Игнорировать различия в регистре символов в таблице про-
цессов и указанном шаблоне.
-j jid Ограничить совпадения процессами внутри тюрьмы (jail) с
идентификатором из разделённого запятыми списка jid.
Значение ``any'' означает любой процесс в любой тюрьме.
Значение ``none'' означает любой процесс не в тюрьме.
-l Подробный вывод. В дополнение к идентификатору процесса
также выводить его имя. При использовании совместно с
-f, для каждого подходящего процесса выводить его иденти-
фикатор и полный список аргументов. Эта опция может быть
использована только с командой pgrep.
-n Из всех подходящих процессов выбрать только самый новый
(по времени запуска).
-o Из всех подходящих процессов выбрать только самый старый
(по времени запуска).
-s sid Ограничить совпадения процессами с идентификатором сессии
(session ID) из разделённого запятыми списка sid. Ноль
означает идентификатор сессии работающей команды pgrep
или pkill. sid.
-t tty Ограничить совпадения процессами, связанными с одним из
терминалов из разделённого запятыми списка tty. Имена
терминалов задаются в форме ttyxx или в более короткой
xx. Одиночный дефис (`-') задаёт процессы, не связанные
с терминалом.
-u euid Ограничить совпадения процессами с идентификатором эффек-
тивного пользователя (effective user ID) из разделённого
запятыми списка euid.
-v Инвертировать совпадение, т.е., вывести процессы, не удо-
влетворяющие заданному условию.
-x Требовать точного совпадения с именем процесса, или, если
задана опция -f, списком аргументов. По умолчанию произ-
водится поиск подстроки.
-сигнал Неотрицательное десятичное значение или символьное имя
сигнала. Указывает сигнал, отправляемый вместо использу-
емого по умолчанию TERM. Эта опция допустима только в
качестве первого аргумента pkill.
При указании одного или более операнда шаблон, они используются как регу-
лярные выражения для поиска совпадения с именем команды или полным спис-
ком аргументов каждого процесса. Если опция -f не указана, шаблон срав-
нивается только с именем команды. Однако в настоящее время FreeBSD
отслеживает лишь первые 19 символов имени команды для каждого процесса.
Попытка найти что-либо в имени команды после первых 19 символов всегда
даёт отрицательный результат.
Следует отметить, что работающий процесс pgrep или pkill никогда не выбе-
рет ни себя, ни системные процессы (нити ядра) как удовлетворяющие крите-
риям поиска.
СТАТУС ЗАВЕРШЕНИЯ
Утилиты pgrep и pkill на выходе возвращают одно из следующих значений:
0 Был найден один или более подходящих процессов.
1 Подходящие процессы не были найдены.
2 В командной строке указаны недопустимые опции.
3 Произошла внутренняя ошибка.
СОВМЕСТИМОСТЬ
Исторически, опция ``-j 0'' означала "любая тюрьма", хотя в других утили-
тах, таких как ps(1), идентификатор тюрьмы (jail ID) 0 имеет обратное
значение, "не в тюрьме". Поэтому ``-j 0'' считается устаревшей, а вместо
неё возможно использовать ``-j any''.
СМОТРИ ТАКЖЕ
kill(1), killall(1), ps(1), flock(2), kill(2), sigaction(2), pidfile(3),
re_format(7)
ИСТОРИЯ
Утилиты pkill и pgrep впервые появились в NetBSD 1.6. Они смоделированы
на основе одноимённых утилит, появившихся в Sun Solaris 7. Впервые они
появились во FreeBSD 5.3.
АВТОРЫ
Andrew Doran <ad [at] NetBSD [dot] org>
FreeBSD 6.2 23 ноября 2006 FreeBSD 6.2
Последние комментарии
11 недель 4 дня назад
35 недель 6 дней назад
2 года 36 недель назад
3 года 6 недель назад
3 года 29 недель назад
3 года 44 недели назад
3 года 45 недель назад
3 года 48 недель назад
4 года 7 недель назад
4 года 12 недель назад