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