Wie kann ich ein "verwaistes" Fenster töten / schließen?

14

Ich habe einige Python-Skripte ausgeführt, um einige Dinge grafisch darzustellen, und gelegentlich verliere ich den Überblick darüber, mit welchen Fenstern sie erzeugt wurden, und beende sie einfach mit ^Z. Im Gegensatz zu Windows sterben die zugehörigen Fenster jedoch nicht ab. Sie bleiben herum und können nicht geschlossen werden.

Diese Fenster scheinen ahnungslos zu sein; Sie werden nach dem Minimieren oder Ändern der Größe nicht neu gezeichnet. Ich bin neu in der Linux-Umgebung, daher kann ich nicht genau beschreiben, was vor sich geht, aber wie kann ich diese Zombie-Orphan-Hobo-Fenster auf jeden Fall loswerden?

Nick T
quelle
Angenommen, Sie führen diese Skripte von einem Terminal aus, können Sie jederzeit eingeben exitund die Prozesse sollten automatisch beendet werden (zumindest nach meiner Erfahrung). Sie können auch den ps -ABefehl verwenden und dann eingeben sudo kill <process id here>.
Alex Spataru
^ Z beendet keinen Linux-Prozess. Es setzt es einfach aus. ^ C sollte deine erste Wahl sein. Wenn Sie auf ^ Z zurückgreifen müssen, um die Kontrolle über das Terminal zurückzugewinnen, sollten Sie den angehaltenen Job beenden, um die Ressourcen freizugeben, die es noch verwendet. Es stirbt nicht mit einem anderen Signal als SIGKILL, solange es ausgesetzt ist. "bg" ist also nützlich, um das Kind sterben zu lassen. xkill ist nett und einfach zu bedienen, aber es bringt den Prozess auch nicht zum Erliegen. Ein gut funktionierendes Programm, das zB nicht hängen bleibt, weil es angehalten wurde, wird beendet, wenn seine X-Verbindung durch xkill geschlossen wird.
Martin Dorey

Antworten:

36

Sie können xkillin der Befehlszeile auf ein geöffnetes Fenster klicken, um den Vorgang abzubrechen.

Eric
quelle
Noch besser, wenn Sie es mit Alt-F2 ausführen, sodass Sie kein Terminalfenster benötigen.
Colan
1

Sie können auch die Reihenfolge verwenden Ctrl+ Alt+Esc

Keld Simonsen
quelle
Standardmäßig ist Switch system controls directlymindestens auf meinem System und auf einem in VMWare installierten System festgelegt (beide sind 18.04 LTS). Vielleicht möchten Sie hinzufügen, wie Sie diese Verknüpfung neu definieren können.
Kulfy