Спочатку потрібно знати, що таке сигнали в системах, подібних Unix (це займе лише кілька хвилин).
Сигнали - це перерви програмного забезпечення, що надсилаються (запущеній) програмі, щоб вказати на важливу подію.
Події можуть відрізнятися від запитів користувачів до неправомірних помилок доступу до пам'яті. Деякі сигнали, такі як сигнал переривання, вказують на те, що користувач попросив програму зробити щось, що не перебуває у звичайному потоці управління.
Ми можемо використовувати декілька типів сигналів - щоб отримати повний список усіх доступних / можливих сигналів, що використовують команду " $ kill -l ":
На наведеному вище висновку чітко видно, що кожен сигнал має "пов'язаний номер " (наприклад, 1, 2, 3) та " ім'я сигналу " (наприклад, SIGUP, SIGINT, SIGQUIT), пов'язаний з ним. Для детального пошуку того, що робить кожен сигнал, перейдіть за цим посиланням .
Нарешті, переходячи до питання "Чому номер 9 у команді kill -9 ":
Існує кілька методів доставки сигналів до програми або сценарію. Одним з найбільш часто використовуваних методів передачі сигналу є використання команди kill - основний синтаксис:
$ kill -signal pid
Де сигналом є або число, або ім'я сигналу, після якого іде процес Id (pid), на який буде спрямований сигнал.
Наприклад - -SIGKILL (або -9 ), сигнал вбиває процес негайно.
$ kill -SIGKILL 1001
і
$ kill -9 1001
обидві команди - це одне і те ж, тобто вище ми використовували "ім'я сигналу", а пізніше ми використовували "номер сигналу".
Вердикт : у кожного є відкритий вибір, чи використовувати "ім'я сигналу" або "номер сигналу" за допомогою команди kill .