Manpages

НАЗВА

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] [--] name ...
killall -l
, --list
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

розташування файлової системи процесів

ВІДОМІ ВАДИ

Завершення роботи за файлом працює лише для виконуваних файлів, які підтримують відкритість файлів під час виконання. Інакше кажучи, роботу нечистих виконуваних файлів не можна завершити у цей спосіб.

Зауважте, що команда killall назва може не спрацювати у бажаний спосіб у системах, відмінних від Linux, особливо, якщо її запущено від імені привілейованого користувача.

killall -w не визначає, чи зник процес і чи не замінено його новим процесом і тим самим PID між сеансами сканування.

Якщо процеси змінюють назву, killall не зможе належним чином встановити їхню відповідність.

У killall передбачено обмеження розміру назв, які може бути вказано у рядку команди. Розмір визначається розміром «довгого» цілого числа без знаку, помноженим на 8. Для більшості 32-бітових систем розмір обмежено 32 символами, а для більшості 64-бітових — 64 символами.

ТАКОЖ ПЕРЕГЛЯНЬТЕ

kill(1), fuser(1), pgrep(1), pidof(1), pkill(1), ps(1), kill(2), regex(3).