C'è un modo per elencare - e uccidere - i processi in esecuzione su Mac OS X in un modo simile a "Ctrl + Alt + Canc" di Windows?


57

Quindi, cosa fai su un Mac quando un processo (al contrario di un'applicazione) sta controllando la CPU, sommergendo la tua macchina e devi ucciderla?

So che puoi usare topo aprire "Applicazioni> Utilità> Activity Monitor" e ucciderlo da lì.

Ma cosa succede quando il processo utilizza già così tanta CPU che è impossibile eseguire una di queste attività?

Su Windows, puoi semplicemente fare ctrl+ alt+ deletee l'elenco dei processi si aprirà in modo affidabile. Quindi, indipendentemente da quanto il tuo computer si sta rompendo, hai sempre accesso all'elenco dei processi.

Su Mac OS, c'è cmd+ alt+ escape, che mostra in modo affidabile le applicazioni in esecuzione . Va bene quando si tratta di un'applicazione che causa il problema. Ma: cosa fai se è un processo?


4
Sicuro. Cmd / Alt / Escape mostra solo le applicazioni: voglio che mostri tutti i processi.
AP257,

@Bobby - sembra che tu non abbia mai lavorato su un Mac e abbia dovuto usare Force Quit . Sono abbastanza sicuro che AP257 abbia capito bene.
JWW

@noloader: Beh, non ho idea di cosa ho cercato di dire con quel commento ...
Bobby,

@ AP257 - Un altro utile che manca ai Mac è un modo per bloccare rapidamente il Mac. Come Ctrl / Alt / Canc di Windows → Blocca Workstation .
JWW

Risposte:


39

Sulla base del tuo desiderio di uccidere un singolo processo, presumo che tu stia bene con una soluzione al Terminale. Il terminale è piuttosto leggero, quindi dovrebbe essere reattivo anche se il tuo sistema è inondato o se stai effettuando l'accesso tramite ssh.

Oltre al killcomando di base , che uccide i processi tramite il loro pid(che dovresti ottenere da un pscomando o dal monitor Attività), un killallcomando accurato al terminale è il comando, che ti consente di uccidere un processo per nome anziché pid.

Ad esempio, se sai che il nome del tuo processo è my-prog-0o altro, puoi andare al terminale e fare:

% killall my-prog-0

Ci sono una serie di buone opzioni (vedi man killallper maggiori informazioni):

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

Una cosa da notare su OS X è che alcuni processi di sistema verranno riavviati automaticamente se vengono uccisi dal launchddemone (penso ??). Ad esempio, se il Dock non risponde, è possibile eseguire una killall Docke si riavvierà automaticamente.


Grazie per la risposta dettagliata e i suggerimenti, anche se non risolve davvero il problema. L'avvio del terminale può richiedere alcuni minuti se la macchina è in avaria .... e quando viene avviata, il processo di background misterioso di solito è andato via ... Grazie comunque.
AP257,

In tal caso, non sono sicuro che ci sia molto da fare, oltre a capire cosa provoca questo processo di thrashing e quindi evitare queste condizioni.
dtlussier,

Perché è 0necessario?
IgorGanapolsky,

Uno "0" non è necessario. È stato incluso nella risposta perché è tipico che i processi abbiano numeri nel loro nome. L'importante è abbinare il nome del processo che vuoi uccidere.
dtlussier,

@dtlussier Tipico che i processi hanno numeri nel loro nome? Non l'ho mai visto, beh, mai. Di quali applicazioni stai parlando?
SilverWolf - Ripristina Monica

25

Force Quit è l'alternativa a Task Manager su Mac. È veloce, efficiente e uccide le applicazioni molto velocemente.

Puoi accedere a questa funzione in due modi.

  1.  Icona Apple (nell'angolo in alto a sinistra dello schermo) -> Uscita forzata ...
  2. Tieni premuto Alt/Option+  Apple/Command+ Escape. Questo può essere utile se hai memorizzato il comando da tastiera e, nel raro caso, anche Finder si comporta male e si blocca.

3
Sì, uccide le applicazioni . Questo è il mio punto! C'è un processo in background sulla mia macchina che a volte provoca il rallentamento massiccio della macchina. Force Quit non lo mostra.
AP257,

Activity Monitor può essere utilizzato per mostrare tutti i processi e ucciderli da lì. Puoi chiuderli o forzarli a uscire dall'applicazione.
JFW,

9

Prova il seguente comando nel terminale per elencare e cercare il processo usando una regex: -

ps gx | grep "Symantec"

L'esempio sopra è elencare tutti i processi relativi a "Symantec". Sostituisci "Symantec" con la tua frase. Quindi utilizzare le varianti del comando 'kill'. Puoi usare: -

uccidi pid

Sostituisci "pid" con l'ID processo effettivo. Oppure usa,

uccidi tutti

come suggerito prima. Per ripetere un altro suggerimento utile, utilizzare

uccidere l'uomo

per vedere il manuale del comando 'kill' e anche scorrere verso il basso e vedere i comandi correlati menzionati nella sezione "VEDERE ANCHE".


8

Non è un processo che uccide lo shorcut della tastiera, solo per le applicazioni in esecuzione. L'unico modo per terminare i processi è tramite Activity Monitor o Terminal usando i comandi UNIX.


3

Vai al monitor attività, trova il dock ed evidenzialo. Premi il pulsante kill (Stopsign con X in alto, in alto a sinistra).

Force Quit viene utilizzato per applicazioni semplici, mentre il monitor attività può essere utilizzato per interrompere i processi.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.