Existe uma maneira de listar - e matar - os processos em execução no Mac OS X de uma maneira semelhante ao Windows "Ctrl + Alt + Delete"?

57

Então, o que você faz em um Mac quando um processo (em oposição a um aplicativo) está monopolizando a CPU, inundando sua máquina e você precisa matá-la?

Eu sei que você pode usar topou abrir "Aplicativos> Utilitários> Monitor de Atividade" e matá-lo a partir daí.

Mas o que acontece quando o processo já está usando tanta CPU que é impossível executar uma dessas tarefas?

No Windows, você pode simplesmente fazer ctrl+ alt+ deletee a lista de processos será aberta de maneira confiável. Portanto, não importa o quanto seu computador esteja debatendo, você sempre terá acesso à lista de processos.

No Mac OS, há cmd+ alt+ escape, que mostra aplicativos em execução de maneira confiável . Tudo bem quando é um aplicativo que está causando o problema. Mas: o que você faz se for um processo?

AP257
fonte
4
Certo. Cmd / Alt / Escape mostra apenas aplicativos: quero que ele mostre todos os processos.
AP257
@ Bobby - parece que você nunca trabalhou em um Mac e teve que usar o Force Quit . Tenho certeza de que o AP257 acertou.
JWW
@noloader: Bem, eu não tenho idéia do que eu tentei dizer com esse comentário ...
Bobby
@ AP257 - outro Macs útil está faltando é uma maneira de bloquear rapidamente o Mac. Como Ctrl / Alt / Delete do Windows → Bloquear estação de trabalho .
JWW

Respostas:

39

Com base no seu desejo de matar um processo individual, suponho que você esteja de acordo com uma solução no Terminal. O terminal é bastante leve, portanto deve ser responsivo mesmo se o seu sistema estiver inundado ou se você estiver efetuando login via ssh.

Além do killcomando básico , que mata os processos por meio deles pid(que você precisaria obter de um pscomando ou do Monitor de atividades), um truque interessante no terminal é o killallcomando, que permite que você mate um processo pelo nome, em vez de pid.

Por exemplo, se você souber o nome do seu processo my-prog-0ou o que seja, poderá ir ao terminal e fazer:

% killall my-prog-0

Há várias boas opções (consulte man killallpara obter mais informações):

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

Uma coisa a observar no OS X é que alguns processos do sistema serão reiniciados automaticamente se forem mortos pelo launchddaemon (eu acho ??). Por exemplo, se o Dock não responder, você poderá fazer um killall Docke ele será reiniciado automaticamente.

dtlussier
fonte
Obrigado pela resposta e sugestões detalhadas, mesmo que isso realmente não resolva o problema. O terminal pode levar alguns minutos para inicializar se a máquina estiver na lixeira .... e quando é iniciada, o processo misterioso em segundo plano geralmente desaparece ... Obrigado mesmo assim.
AP257 25/09/10
Se for esse o caso, não tenho certeza de que há muito a ser feito, além de descobrir o que causa esse processo de debulhar e evitar essas condições.
dtlussier
Por que é 0necessário?
IgorGanapolsky
Um '0' não é necessário. Foi incluído na resposta porque é típico que processos tenham números em seu nome. O importante é combinar o nome do processo que você deseja matar.
precisa saber é o seguinte
@dtlussier Típico que processos têm números em seu nome? Eu nunca vi isso, bem, nunca. De quais aplicativos você está falando?
SilverWolf 4/03
25

Forçar encerramento é a alternativa ao Gerenciador de tarefas no Mac. É rápido, eficiente e mata aplicativos muito rápido.

Você pode acessar esse recurso de duas maneiras.

  1. Icon Apple Icon (no canto superior esquerdo da tela) -> Force Quit ...
  2. Segure Alt/Option+  Apple/Command+ Escape. Isso pode ser útil se você memorizou o comando do teclado e, no raro caso em que o Finder se comporta mal, também congela.
JFW
fonte
3
Sim, mata aplicativos . Esse é meu argumento! Há um processo em segundo plano na minha máquina que às vezes faz com que a máquina fique lenta demais. Forçar Quit não mostra isso.
AP257 25/09/10
O Activity Monitor pode ser usado para mostrar todos os processos e eliminá-los por lá. Você pode encerrá-los ou forçá-los a sair no aplicativo.
JFW
9

Tente o seguinte comando no terminal para listar e procurar processo usando uma regex: -

ps gx | grep 'Symantec'

O exemplo acima é listar todos os processos relacionados à 'Symantec'. Substitua 'Symantec' por sua própria frase. Em seguida, use variações do comando 'kill'. Você pode usar: -

matar pid

Substitua 'pid' pelo ID do processo real. Ou use,

Mate todos

como sugerido antes. Para reiterar outra sugestão útil, use

homem mata

para ver o manual do comando 'kill' e também rolar para baixo e ver os comandos relacionados mencionados na seção "VER TAMBÉM".

Amit
fonte
8

O processo não mata o atalho do teclado, apenas para aplicativos em execução. A única maneira de eliminar processos é através do Monitor de Atividade ou através do Terminal usando comandos UNIX.

Madison S
fonte
3

Vá para o monitor de atividades, encontre o dock e destaque-o. Aperte o botão kill (Stopsign com X nele, canto superior esquerdo).

Forçar encerramento é usado para aplicativos simples, enquanto o monitor de atividades pode ser usado para eliminar processos.

Alex
fonte
2

Use o Monitor de atividades para encontrar o processo que você deseja eliminar. Olhe para o PID usando o tipo de terminal.

Isso pressupõe que você tenha acesso administrativo ou sudu

Steve Walker
fonte
11
Por que não selecionar o processo e pressionar o botão "Forçar um processo a sair" no canto superior esquerdo?
Arjan #