Что означает «<>» в «kill -9 <>»?


15

Я прохожу учебное пособие по восстановлению после сбоя базы данных, и в учебном пособии сбой на хосте первичной базы данных моделируется с помощью:

kill -9 <>

Я знаю, что killкоманда используется для отправки сигнала процессу, который 9представляет SIGKILLсигнал, который завершает процесс, но что означает <>аргумент?

Я прочитал страницы руководства для killкоманды, но все еще не могу понять, почему и для чего <>используется.


7
Можете ли вы добавить ссылку на учебник? Первое, что приходит на ум, - это то, что автор этого поста хочет, чтобы вы заменили <>символы определенным идентификатором процесса.
Дэн,

20
Похоже, что автор сайта перепутался со строками HTML. Исходный код имеет: kill&nbsp;-9 &lt;<pid for="" nbsp="" postmaster="" process="">&gt;</pid>, так что они , вероятно , написали kill -9 <pid>и смешной редактор сделал все волшебство , чтобы создать <pid>тег.
Федорки

9
@Fedorqui, <pid for="" nbsp="" postmaster="" process="">это имеет смысл! Предполагается сказать «pid для процесса postmaster», и это основной PID PostgreSQL для уничтожения. Таким образом, пост должен был сказать, что kill -9 <pid for postmaster process>Тайна раскрыта.
dw8547

9
Heads: не делать kill -9привычку. Просто используйте kill. SIGTERM позволяет корректно завершить процесс. SIGKILL ( -9) - это ядерный вариант.
Джон Кугельман

@fedorqui: Я почти уверен, что это было kill -9 << pid >>.
Джошуа

Ответы:


16

Вы должны заменить <>идентификатор процесса. Чтобы получить идентификатор процесса, вы можете использовать команду

ps -aux

В нем будут перечислены все процессы, и вам просто нужно выбрать правильный процесс

Если у вас есть один экземпляр процесса, вы также можете использовать pkillкоманду с именем процесса, например

pkill -9 mysql

1
... и если есть несколько экземпляров, вы можете использовать killall. Кроме того, если вы хотите PID, pgrepспасает охоту через psвыходные данные
Zanna

3
@Zanna pkill на самом деле убивает все процессы, которые совпадают, а не только один.
Дан,

7
имейте в виду, что pkill убьет любой процесс, содержащий mysqlслово. Например, если у вас есть вызываемый процесс, mysqlи другой mysql-python(просто пример) оба будут убиты этой командой.
Дан,

3

это

<pid> [...]
      Send signal to every <pid> listed.

в manpage. В <>кавычках всегда есть описание .


2

<>на странице man означает заменить <>на PID.

В дополнение к ответу Фелисьена с помощью psкоманды вы также можете использовать topилиhtop

top -d 10

Используйте -d <>(продолжительность), чтобы обновить каждую <>секунду.

Чтобы убить процесс, просто запишите PID и убейте ID процесса с помощью:

kill -9 xxxx

Примечание: для htop, вам нужно будет ввести htop -d 100то есть; 10секунд.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.