killall -
завершает
процессы с
указанным
именем
killall [
-Z,
--context
шаблон] [
-e,
--exact] [
-g,
--process-group]
[
-i,
--interactive] [
-n,
--ns
PID] [
-o,
--older-than
ВРЕМЯ] [
-q,
--quiet] [
-r,
--regexp]
[
-s,
--signal
СИГНАЛ,
-СИГНАЛ] [
-u,
--user
пользователь]
[
-v,
--verbose] [
-w,
--wait] [
-y,
--younger-than
ВРЕМЯ] [
-I,
--ignore-case] [
-V, --version]
[
--]
имя …
killall -l
killall -V,
--version
killall посылает
сигнал
всем
процессам,
выполняющим
любую
указанную
команду.
Если не
указано
имя
сигнала, то
используется
SIGTERM.
Сигналы
можно
задавать
именем
(например,
-HUP
или
-SIGHUP),
номером
(например,
-1)
или в
параметре
-s.
Если имя
команды не
является
регулярным
выражением
(параметр
-r)
и содержит
косую
черту (
/), то
процессы,
выполняющие
этот
определённый
файл, будут
выбраны
для
завершения
независимо
от их имени.
killall
возвращает
код выхода
ноль, если
был
завершён
хотя бы
один
процесс
для каждой
заданной
команды,
или, если
команды не
указаны,
хотя бы
один
процесс,
подошедший
под
требования
поиска по
-u
и
-Z. В
противном
случае
killall
возвращает
ненулевое
значение.
Процесс
killall
никогда не
завершает
сам себя (но
может
завершить
другие
процессы
killall).
-
-e, --exact
- Требовать
полного
совпадения
для очень
длинных
имён. Если
имя
команды
длиннее
чем 15
символов,
то полное
имя может
быть
недоступно
(т. е., часть
затёрлась).
В этом
случае, killall
завершит
все
процессы,
совпадающие
по первым 15
символам. С
параметром
-e такие
элементы
не
обрабатываются.
killall выводит
сообщение
для
каждого
необработанного
элемента,
если
вместе с -e
дополнительно
указан
параметр
-v.
-
-I, --ignore-case
- Игнорировать
регистр
символов в
именах
процессов.
-
-g, --process-group
- Завершить
группу
процесса, в
которую
входит
процесс. На
всю группу
посылается
только
один
сигнал
завершения,
даже если в
группе
найдено
несколько
процессов.
-
-i, --interactive
- Запрашивать
подтверждение
перед
завершением
процессов.
-
-l, --list
- Показать
все
известные
имена
сигналов.
-
-n, --ns
- Искать
процессы в
том же
пространстве
имён PID что и
у PID. По
умолчанию
поиск
выполняется
по всем
пространствам
имён.
-
-o, --older-than
- Искать
процессы,
старее
(запущенные
до)
заданного
времени.
Время
задаётся в
виде числа
с
плавающей
точки и
идентификатора.
Идентификаторами
могут быть
s,m,h,d,w,M,y (секунды,
минуты,
часы, дни,
недели,
месяцы и
года,
соответственно).
-
-q, --quiet
- Не
сообщать,
если ни
одного
процесса
не
завершено.
-
-r, --regexp
- Рассматривать
шаблон
имени
процесса
как
расширенное
регулярное
выражение
POSIX согласно
regex(3).
-
-s, --signal,
-СИГНАЛ
- Посылать
указанный
СИГНАЛ, а
не SIGTERM.
-
-u, --user
- Завершить
процессы,
принадлежащие
указанному
пользователю.
Имена
команд
необязательны.
-
-v, --verbose
- Уведомлять
об
успешной
отправке
сигнала.
-
-V, --version
- Показать
информацию
о версии.
-
-w, --wait
- Ожидать
завершения
процессов.
killall
проверяет
раз в
секунду
существование
завершаемых
процессов
и
прекращает
работу
только
если
никого не
осталось.Заметим,
что killall
может
ждать
вечно, если
сигнал был
проигнорирован,
никак не
повлиял
или если
процесс
остался в
состоянии
зомби.
-
-y, --younger-than
- Искать
процессы,
новее
(запущенные
после)
заданного
времени.
Время
задаётся в
виде числа
с
плавающей
точки и
идентификатора.
Идентификаторами
могут быть
s,m,h,d,w,M,y (секунды,
минуты,
часы, дни,
недели,
месяцы и
года,
соответственно).
-
-Z, --context
- Задать
контекст
безопасности:
завершать
только
процессы с
контекстом
безопасности,
который
совпадает
с заданным
шаблоном
расширенного
регулярного
выражения.
В
командной
строке
должен
указываться
раньше
остальных
параметров.
Имена
команд
необязательны.
- /proc
- местонахождение
файловой
системы proc
Завершение
по
указанному
файлу
работает
только для
исполняемых
файлов,
которые
остаются
открытыми
при
выполнении,
то есть
недвоичные
исполняемые
файлы не
могут
завершаться
этим
способом.
Обратите
внимание,
что ввод
killall
имя может
не
привести к
желаемому
действиям
на не Linux
системах,
особенно
при
запуске от
привилегированного
пользователя.
killall -w не
понимает,
что
процесс
исчез и
заменён
новым
процессом
с тем же PID
между
опросами.
Если
процессы
меняют
свои имена,
killall может не
найти их.
killall имеет
ограничение
на имена,
которые
могут быть
указаны в
командной
строке. Оно
равно
размеру unsigned long integer
умноженному
на 8. Для
большинства
32-битных
систем
ограничение
равно 32, а для
64-битных
систем,
обычно,
равно 64.
kill(1),
fuser(1),
pgrep(1),
pidof(1),
pkill(1),
ps(1),
kill(2),
regex(3).