Cách giết tiến trình theo tên thay vì PID qua dòng lệnh

Anonim

Người dùng dòng lệnh dựa vào lệnh ‘kill’ để chấm dứt một quy trình như được xác định bởi mã định danh quy trình thích hợp (PID). Mặc dù không có gì sai khi nhắm mục tiêu các quy trình theo PID của chúng, nhưng một cách tiếp cận khác thường dễ dàng hơn là nhắm mục tiêu một quy trình theo tên, thay vì mã định danh duy nhất của nó.

Có một số cách để hủy quy trình theo tên quy trình, chúng tôi sẽ xem xét hai phương pháp chính sử dụng killall và pkill.Chúng sẽ hoạt động giống nhau trong Mac OS / X và linux, đồng thời chúng có thể được sử dụng để nhắm mục tiêu các ứng dụng và quy trình GUI cũng như các quy trình và ứng dụng đang chạy trong nền hoặc dành riêng cho dòng lệnh. Một trong hai lệnh có thể được thêm tiền tố sudo để chấm dứt các tác vụ cấp cơ sở hoặc những tác vụ thuộc sở hữu của người dùng khác.

Giết tiến trình theo tên với killall

Lệnh killall là cách thông dụng nhất để giết một tiến trình theo tên của nó:

  1. Từ Terminal, gõ lệnh sau (trong ví dụ này sử dụng tác vụ “ExampleTask” làm tiến trình được nhắm mục tiêu để hủy)
  2. killall Ví dụTask

  3. Nhấn quay lại để hủy ngay quy trình ‘ExampleTask’ (thay thế ExampleTask bằng bất kỳ tên quy trình nào khác để hủy quy trình đó)

Hãy nhớ rằng, việc hủy một tiến trình là tức thời và không khoan nhượng, nó sẽ ngay lập tức chấm dứt tiến trình mà không lưu bất kỳ dữ liệu nào. Điều này có thể dẫn đến mất dữ liệu và các bất thường khác nếu bạn không chắc mình đang làm gì.

Giết tiến trình theo tên với pkill

Lệnh pkill cũng đưa ra cách tiếp cận để chấm dứt các quy trình theo tên thay vì nhắm mục tiêu PID. Một trong những ưu điểm của pkill là giúp dễ dàng nhắm mục tiêu các quy trình có dấu cách trong tên của chúng vì bạn chỉ cần sử dụng dấu ngoặc kép xung quanh tên tác vụ để hủy.

  1. Từ Terminal, gõ lệnh sau:
  2. "

    pkill Ví dụ Tên quy trình tác nhân"

  3. Hit Return để kết thúc ngay quy trình đã đặt tên

Giống như killall, pkill sẽ ngay lập tức chấm dứt quá trình đã được nhắm mục tiêu mà không có xác nhận, hộp thoại, lưu hoặc bất kỳ điều gì khác. Quá trình này chỉ kết thúc ngay lập tức, giống như sử dụng lực lượng thoát ứng dụng từ trình quản lý tác vụ hoặc Trình giám sát hoạt động.

pkill là một công cụ mạnh với nhiều khả năng, nếu quan tâm, bạn có thể tìm hiểu về cách sử dụng pkill với các ký tự đại diện và sử dụng pkill để hủy tất cả các quy trình thuộc về một người dùng cụ thể.

Bạn có biết một cách khác để nhắm mục tiêu một quy trình theo tên để loại bỏ nó khỏi dòng lệnh không? Cho chúng tôi biết trong các ý kiến ​​dưới đây!

Cách giết tiến trình theo tên thay vì PID qua dòng lệnh