Có cách nào để liệt kê các dòng và giết các quá trình đang chạy trên Mac OS X theo cách Windows Ctrl Ctrl + Alt + Xóa một cách giống như Windows không?


57

Vậy, bạn sẽ làm gì trên máy Mac khi một quá trình (trái ngược với ứng dụng) đang làm hỏng CPU, làm hỏng máy của bạn và bạn cần phải giết nó?

Tôi biết bạn có thể sử dụng tophoặc mở Ứng dụng trên các ứng dụng> Tiện ích> Giám sát hoạt động và giết nó từ đó.

Nhưng điều gì xảy ra khi quá trình đã sử dụng quá nhiều CPU đến mức thực hiện một trong hai nhiệm vụ đó là không thể?

Trên Windows, bạn chỉ có thể thực hiện ctrl+ alt+ deletevà danh sách quy trình sẽ mở một cách đáng tin cậy. Vì vậy, cho dù máy tính của bạn có đập mạnh đến mức nào, bạn luôn có quyền truy cập vào danh sách các quy trình.

Trên Mac OS, có cmd+ alt+ escape, hiển thị đáng tin cậy các ứng dụng đang chạy . Tốt khi nó là một ứng dụng gây ra vấn đề. Nhưng: bạn sẽ làm gì nếu đó là một quá trình?


4
Chắc chắn rồi. Cmd / Alt / Escape chỉ hiển thị các ứng dụng: Tôi muốn nó hiển thị tất cả các quy trình.
AP257

@ BOB - có vẻ như bạn chưa bao giờ làm việc trên máy Mac và phải sử dụng Force Quit . Tôi khá chắc chắn AP257 đã làm đúng.
jww

@noloader: Chà, tôi không biết tôi đã cố nói gì với bình luận đó ...
Bobby

@ AP257 - Một máy Mac hữu ích khác bị thiếu là cách khóa nhanh máy Mac. Giống như Ctrl / Alt / Delete của Windows → Khóa máy trạm .
jww

Câu trả lời:


39

Dựa trên mong muốn của bạn để giết một quy trình riêng lẻ, tôi cho rằng bạn ổn với giải pháp tại Terminal. Thiết bị đầu cuối khá nhẹ nên phải phản hồi ngay cả khi hệ thống của bạn bị ngập nước hoặc nếu bạn đang đăng nhập qua ssh.

Ngoài killlệnh cơ bản , giết chết các tiến trình thông qua lệnh của chúng pid(mà bạn cần nhận từ một pslệnh hoặc trình giám sát hoạt động), một thủ thuật gọn gàng tại thiết bị đầu cuối là killalllệnh, cho phép bạn giết một tiến trình bằng tên chứ không phải pid.

Ví dụ: nếu bạn biết tên của quy trình của bạn là my-prog-0hoặc bất cứ điều gì, bạn có thể đi đến thiết bị đầu cuối và làm:

% killall my-prog-0

Có một số tùy chọn tốt (xem man killallđể biết thêm):

-s : Shows the kill commands that will be generated so you can be safe.
-u : Limits to a specified user

Một điều cần lưu ý về OS X là một số quy trình hệ thống sẽ được tự động khởi động lại nếu chúng bị giết bởi launchddaemon (tôi nghĩ ??). Ví dụ: nếu Dock không phản hồi, bạn có thể thực hiện killall Dockvà nó sẽ tự động khởi động lại.


Cảm ơn câu trả lời và đề xuất chi tiết, mặc dù nó không thực sự giải quyết được vấn đề. Thiết bị đầu cuối có thể mất vài phút để khởi động nếu máy bị hỏng .... và khi nó khởi động, quá trình nền bí ẩn thường biến mất ... Dù sao cũng cảm ơn.
AP257

Nếu đó là trường hợp thì tôi không chắc sẽ có nhiều việc phải làm, ngoài việc tìm ra nguyên nhân khiến quá trình đập phá này xảy ra và sau đó tránh những điều kiện này.
dtlussier

Tại sao 0cần thiết?
IgorGanapolsky

A '0' là không cần thiết. Nó được bao gồm trong câu trả lời vì thông thường các quy trình có số trong tên của chúng. Điều quan trọng là khớp tên của quá trình bạn muốn giết.
dtlussier

@dtlussier Điển hình là các quy trình có số trong tên của họ? Tôi chưa bao giờ thấy điều đó, tốt, bao giờ. Những ứng dụng bạn đang nói về?
SilverWolf

25

Force Quit là lựa chọn thay thế cho Trình quản lý tác vụ trên Mac. Nó nhanh, hiệu quả và giết chết các ứng dụng rất nhanh.

Bạn có thể truy cập tính năng này thông qua hai cách.

  1. Icon Biểu tượng Apple (ở góc trên cùng bên trái của màn hình) -> Buộc thoát ...
  2. Giữ Alt/Option+  Apple/Command+ Escape. Điều này có thể hữu ích nếu bạn ghi nhớ lệnh bàn phím và trong trường hợp hiếm hoi là Finder cũng hoạt động sai và đóng băng dọc theo nó.

3
Vâng, nó giết chết các ứng dụng . Đó là quan điểm của tôi! Có một quá trình nền trên máy của tôi đôi khi khiến máy chạy chậm lại ồ ạt. Force Quit không hiển thị nó.
AP257

Activity Monitor có thể được sử dụng để hiển thị tất cả các quy trình và tiêu diệt chúng thông qua đó. Bạn có thể bỏ chúng hoặc buộc bỏ chúng trong ứng dụng.
JFW

9

Hãy thử lệnh sau trong terminal để liệt kê và tìm kiếm tiến trình bằng regex: -

ps gx | grep 'Symantec'

Ví dụ trên là liệt kê tất cả các quy trình liên quan đến 'Symantec'. Thay thế 'Symantec' bằng cụm từ của riêng bạn. Tiếp theo sử dụng các biến thể của lệnh 'kill'. Bạn có thể sử dụng: -

giết chết

Thay thế 'pid' bằng id quá trình thực tế. Hoặc dùng,

giết

như đề xuất trước đây. Để nhắc lại một đề nghị hữu ích khác, hãy sử dụng

người đàn ông giết

để xem hướng dẫn sử dụng lệnh 'kill' và cũng cuộn xuống và xem các lệnh liên quan được đề cập trong phần "XEM CSONG".


8

Không có quá trình giết chết bàn phím, chỉ để chạy các ứng dụng. Cách duy nhất để tiêu diệt các tiến trình là thông qua Trình giám sát hoạt động hoặc thông qua Terminal bằng các lệnh UNIX.


3

Đi đến màn hình hoạt động, tìm dock và tô sáng nó. Nhấn nút kill (Stopsign với X trong đó, trên cùng bên trái).

Force Quit được sử dụng cho các ứng dụng đơn giản, trong khi trình giám sát hoạt động có thể được sử dụng để tiêu diệt các tiến trình.


2

Sử dụng Trình giám sát hoạt động để tìm tiến trình bạn muốn tiêu diệt Nhìn vào PID Sử dụng loại đầu cuối Loại số PID và sau đó quay trở lại.

Điều này giả sử bạn có quyền truy cập quản trị viên hoặc sudu


1
Tại sao không chọn quy trình và nhấn nút "Buộc một quy trình để thoát" ở góc trên cùng bên trái?
Arjan
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.