Matando todas as instâncias de um programa específico a partir da linha de comando [fechada]

23

Existe alguma maneira de matar todas as instâncias de um programa específico com um comando de linha de comando?

George
fonte
12
Qual SO? É killall sob * ix.
Dave C
1
Essa pergunta é muito ampla, a menos que você especifique um ou dois SOs para realizar isso.
Karan

Respostas:

47

No GNU / Linux, BSD, OS X e outros aplicativos similares ao Unix

killall program

No Windows

taskkill /IM program.exe
Der Hochstapler
fonte
6
Cuidado com "outros Unix-gostos": No Solaris, killalle bem, mata todos : tehtable.wordpress.com/2009/12/07/note-to-self-solaris-linux
us2012
Usa /Fbandeira para matar com força.
Hassaan Salik
4

No Windows 7 (Vista?), Prefiro tskill processnameque você não precise se lembrar de opções de linha de comando ou escrever .exe no final. por exemplo:

tskill chrome

Matará todos os processos do cromo.

No Windows XP, usei a pskillpartir do pacote pstools , que usa uma sintaxe semelhante. Esses dois comandos também podem funcionar em computadores remotos, se você tiver direitos de administrador.

Luke
fonte
4

Em muitos sistemas, você encontrará os comandos kille killall.

Se você conhece o PID do processo, pode usar kill PID

O primeiro mata apenas um processo específico. (Ou melhor, envia um sinal para ele, por exemplo, o sinal para terminar). Você pode escrever um wrapper com ps e grep para eliminar todos os processos correspondentes a um nome.

ou, se instalado, você pode usar killall

Cuidado, porém, nem todos os comandos killall fazem a mesma coisa. No Solaris, ele mata todos os processos. Repito tudo. Não apenas aqueles que você queria, mas todos os processos que você tem o direito de matar serão mortos. Verifique a página de manual do seu sistema local e / ou se é um link para o killall5.

Hennes
fonte
Agradável. Então killall5 é o desagradável ou aquele que mata os processos que você queria?
Larsh
killall5é o desagradável.
cpast
2

No Windows, se você deseja matar um processo e qualquer processo filho iniciado por ele, use este comando Taskkill / im program.exe / t

Farhad
fonte
1

No Windows 7 existe taskkill.

Stf
fonte
1

para Windows, você pode usar
taskkill / im program_name
usar taskkill / im program_name / f para programas mais problemáticos
Use ProcessExplorer se você quiser uma alternativa GUI para Taskmanager

user13267
fonte
1

No Linux, o comando é pkillou killall. pkillé geralmente recomendado, já que em alguns sistemas, killallna verdade, mata todos os processos .

Restabelecer Monica
fonte
dis ~ # killall Uso: killall [OPÇÃO] ... [-] NOME ... killall -l, --list killall -V, --version -e, - exata requer correspondência exata para nomes muito longos -I , - ignorar maiúsculas de minúsculas e minúsculas processo coincidir com o nome ...
elcash 13/03
1
@Brendan Long: Não é uma lenda urbana. Em alguns sistemas SYS V, killallna verdade, mata tudo. Isso não é necessário, mas se você não espera que se comporte de maneira diferente em um sistema diferente, poderá ter um momento educacional .
Hennes 13/03
0

Hmm, e pensar que eu tenho usado pkill todos esses anos ...

KevinM
fonte