Trước tiên, bạn cần biết Tín hiệu trong các hệ thống giống Unix là gì (Chỉ mất vài phút).
Tín hiệu , là các ngắt phần mềm được gửi đến một chương trình (đang chạy) để chỉ ra rằng một sự kiện quan trọng đã xảy ra.
Các sự kiện có thể thay đổi từ yêu cầu của người dùng đến lỗi truy cập bộ nhớ bất hợp pháp. Một số tín hiệu, chẳng hạn như tín hiệu ngắt, cho biết rằng người dùng đã yêu cầu chương trình thực hiện điều gì đó không nằm trong quy trình kiểm soát thông thường.
Có một số loại Tín hiệu chúng ta có thể sử dụng - để có danh sách đầy đủ tất cả các Tín hiệu có sẵn / có thể sử dụng lệnh " $ kill -l ":
Trong đầu ra ở trên, có thể thấy rõ ràng rằng mỗi Tín hiệu có một ' số tín hiệu ' (ví dụ: 1, 2, 3) và ' tên tín hiệu ' (ví dụ: SIGUP, SIGINT, SIGQUIT) được liên kết với nó. Để xem chi tiết những gì mỗi Tín hiệu làm, hãy truy cập liên kết này .
Cuối cùng, đến với câu hỏi "Tại sao lại chọn số 9 trong lệnh kill -9 ":
Có một số phương pháp truyền tín hiệu đến một chương trình hoặc tập lệnh. Một trong những phương pháp thường được sử dụng để gửi tín hiệu là sử dụng lệnh kill - cú pháp cơ bản là:
$ kill -signal pid
Trong đó tín hiệu là số hoặc tên của tín hiệu, theo sau là Id quá trình (pid) mà tín hiệu sẽ được gửi đến.
Ví dụ - -SIGKILL (hoặc -9 ), tín hiệu kết thúc quá trình ngay lập tức.
$ kill -SIGKILL 1001
và
$ kill -9 1001
cả hai lệnh đều giống nhau tức là ở trên chúng ta đã sử dụng 'tên tín hiệu', và sau đó chúng ta đã sử dụng 'số tín hiệu'.
Phán quyết : Người ta có một lựa chọn mở về việc sử dụng 'tên tín hiệu' hay 'số tín hiệu' với lệnh giết .