Alle Chrome-Instanzen in der Befehlszeile beenden?


37

In einigen Fällen reicht es nicht aus, einen einzelnen Tab / Prozess zu beenden, und ich muss Chrome vollständig schließen. Wie kann ich alle Prozesse auf einmal schließen, da Chrome über mehrere Prozesse verfügt?

Ich weiß das...

pgrep chromeGibt alle Pids zurück. Was ist ein Trick, der es mir ermöglicht, alle zu schließen, indem ich sie einem anderen Befehl zuführe oder sie in eine CSV-Datei oder so etwas zusammenführe?


3
Da es mindestens drei Antworten hier , dass unnötig machen kill -9, hier sind drei Referenzen die Gründe diskutieren , die die letzte Wahl sein sollten: Wann soll ich kill -9 , kill -9 und Useless Verwendung von kill -9 .
Bis auf weiteres angehalten.

1
Ähnliche Frage auf der U / Linux-Site: unix.stackexchange.com/q/34101/6272
AlikElzin-kilaka

Die sauberste Antwort ist wirklich die von Fragen auf anderen Websites, wie unten angegeben, da herausgefunden wird, welcher Prozess mit dem ältesten Zeitstempel beendet werden soll:pkill --oldest chrome
nealmcb

Antworten:


55

Versuchen Sie es mit pkill (1) .

pkill chrome


Beachten Sie jedoch, dass pkill möglicherweise nicht auf allen Systemen verfügbar ist. Wenn Sie jedoch über pgrep verfügen, ist es sehr wahrscheinlich, dass auch pkill vorhanden ist.
kSiR

2
Für mich war dies case sensitive, ich musste schreibenpkill Chrome
Liron Yahdav

1
Gabel hat bei mir nicht funktioniert. Using pkill chromeIt hat den Hauptprozess von Chrome nicht beendet. Es wurden alle internen Prozesse geschlossen, die bei allen Erweiterungen zu Abstürzen führten. Außerdem wurden einige Fenster beim nächsten Start nicht geöffnet, was zu einem
Statusverlust führte

2
@ AlikElzin-kilaka - Sie könnten explizit versuchen, den ältesten Chrome-Prozess mit etwas wiepkill --oldest chrome
rinogo

13
ps aux | grep chrome | awk ' { print $2 } ' | xargs kill -9

oder

pgrep chrome | xargs kill -9

oder

ps aux | awk '/chrome/ { print $2 } ' | xargs kill -9

Letzteres ist "eleganter", da es nicht die tatsächliche PID für "grep chrome" in seiner ps-Auflistung aufnimmt

:-)


Gibt es einen Grund, ps ... | anstatt zu verwenden pgrep, auch wenn Sie nicht verwenden möchten pkill?
Cascabel

3
Es ist auch immer höflich, mit SIGTERM zu beginnen, bevor es zu SIGKILL kommt.
Cascabel

nicht wirklich, nur weil ich die ps-option rausgeworfen habe, weil viele meiner systeme nackte knochen sind, was bedeutet, wir haben keine dinge wie pkill pgrep
kSiR 14.04.10

Ich stimme zu, aber man hat nur gebeten zu töten: -O s / -9 / -1 / g
kSiR

6

Einige Systeme verfügen möglicherweise auch über nützliche Programme wie killallund pidof(die tatsächlich von System V bereitgestellt werden killall5):

killall chrome
kill -9 `pidof chrome`

Beide sollten das erreichen, was Sie verlangen.


1
Sie sollten es -9nur als letzten Ausweg verwenden. Mache kill PIDzuerst.
Bis auf weiteres angehalten.

killallUnterstützt auch die Unterscheidung zwischen Groß- und Kleinschreibung. Beispiel: killall --ignore-case ChRomEAlle Chrome-Prozesse werden abgebrochen. Die Option --ignore-casekann auch auf gekürzt werden -I. pkillUnterstützt leider keine Unterscheidung zwischen Groß- und Kleinschreibung - zumindest auf den Linux-Systemen, die ich ausprobiert habe (unterstützt jedoch die Unterscheidung zwischen -iGroß- und Kleinschreibung unter MacOS).
Nonbeing

1

Sie sollten wirklich nur verwenden, pkillwie von jschmier vorgeschlagen, aber wenn Sie auf pgrep bestehen, verwenden Sie einfach die Befehlssubstitution:

kill $(pgrep chrome)

would'nt kill pgrep chrome`` also work;)
kSiR

@kSiR: [einen Monat zu spät] Ja, aber es $(...)ist eine großartige Angewohnheit, sich darauf einzulassen , damit Sie bei Bedarf verschachteln und zwischen den entsprechenden Begrenzungszeichen in Ihrem Editor wechseln können.
Cascabel

1

Der einfachste Befehl ist dieser:

sudo killall chrome

Dadurch werden mit Administratorrechten alle Prozesse abgebrochen, die chromein ihrem Namen enthalten sind.

Sehen Sie man killallfür weitere Informationen ...


3
Könnten Sie ein bisschen erklären, wie Ihre Antwort funktioniert?
nhinkle


0

Sie können auch Folgendes ausprobieren:

ps -C chrome |cut -f 1 -d' ' | xargs kill

Sie sollten -9 nur als letzten Ausweg verwenden. Mache kill PIDzuerst.
Bis auf weiteres angehalten.

guter Punkt. Ich habe meine Antwort aktualisiert.
Nathan Fellman

Keine Notwendigkeit für ein weiteres Rohr durch cut; pskann es selbst tun: ps -o pid= -C chrome | xargs kill.
Musiphil

Und es ist eine gute Gewohnheit zu setzen -rin xargs: ps -o pid= -C chrome | xargs -r kill.
Musiphil

@musiphil: was ist -r?
Nathan Fellman

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.