Gibt es eine Möglichkeit google-chrome
, das Terminal zu verlassen, abgesehen von der Verwendung von killall google-chrome
?
Ich möchte es aus einem Skript schließen können, ohne es zu beenden.
shell-script
kill
exit
chrome
Slybloty
quelle
quelle
Antworten:
Vielleicht
wmctrl
könnte es hilfreich sein. Sie können die-c
Option verwenden, mit der ein Fenster ordnungsgemäß geschlossen wird:Die Zeichenfolge
chrome
wird mit den Fenstertiteln abgeglichen. Beachten Sie, dass das Fenster möglicherweise nicht geschlossen wird, wenn eine Nachricht angezeigt wird (z. B. wenn mehrere Registerkarten geöffnet sind).quelle
wmctrl
.pkill -o chrome
tut es aber.Mit diesem Befehl wird der Chrome-Prozessbaum in allen Fenstermanagern ordnungsgemäß beendet:
oder wenn Sie es vorziehen:
Einzelheiten:
SIGTERM
--oldest
SIGTERM
die gleichen wie Signal ist15
, also--signal TERM
, oder es einfach aus verlassen , daSIGTERM
das Standardsignalwmctrl
funktioniert mit Unity und einigen anderen, aber nicht mit allen Fenstermanagernwmctrl -c
Schließt jeweils ein Fenster. Um also alle Chromfenster zu schließen, benötigen Sie etwas wiewhile wmctrl -c 'Google Chrome'; do sleep 0.2; done
quelle
--oldest
keine Option ist: using-o
works.-f
argument gegen pkill funktioniert bei mir nicht. Ich habe einige andere Prozesse als root ausgeführt, die zufällig das Wort chrome in ihren Befehlszeilen haben, so dass mir nur die Erlaubnis verweigert wird. Ohne das-f
funktioniert es aber einwandfrei.Das funktioniert bei mir:
Beachten Sie, dass ich einen ziemlich ausführlichen Befehl verwende, um ihn im Code lesbar zu halten. Natürlich können Sie auch Folgendes eingeben:
quelle
Auf
Mac OS X
, verwenden Sie diese stattdessenSie sucht nach einem Google Chrome-Prozess und beendet auch alle übergeordneten Prozesse.
Aus dem pkill-Handbuch
Gemäß der Antwort von @ keith-cascio können Sie stattdessen versuchen, den ältesten Prozess abzubrechen . Beachten Sie, dass dies bei mir nicht funktioniert hat.
quelle
Versuchen:
Dies sendet ein "QUIT" -Signal an Chrome, das abhängig von Ihrem Fenstermanager das ist, was normalerweise gesendet wird, wenn Sie zum Schließen aufgefordert werden.
quelle
kill
oder dort,killall
wo Chrome es als Absturz ansieht und nach Wiederherstellung fragt.SIGQUIT
wird in der Regel nicht an Anwendungen gesendet, wenn diese zum Schließen aufgefordert werden (ich kenne keine WMs, die dies tun).WM_DELETE_WINDOW
ist der Standard.kill -15 <pid_of_chrome>
getan, wonach ich gesucht habe.google-chrome
Hat aber mehrere pids und es hat ein paar versucht, tatsächlich das richtige zu bekommen.