alle Fenster auf einmal schliessen...script/Programm

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
latenite
Beiträge: 688
Registriert: 14.05.2007 01:04:23

alle Fenster auf einmal schliessen...script/Programm

Beitrag von latenite » 13.06.2008 17:57:15

Hallo Leute

Sagt mal giebt es ein Script oder Programm das mir alle geöffneten Fenster auf einmal schließt? Oft habe ich mhrere Browser und editoren ffen und will dann nicht immer jeder einzeln anfassen und schliessen.

Ne Idee?

Danke

Benutzeravatar
pinguin2008
Beiträge: 54
Registriert: 30.05.2008 23:22:31

Re: alle Fenster auf einmal schliessen...script/Programm

Beitrag von pinguin2008 » 14.06.2008 00:17:53

Hi, schreib Dir ein Script wie z.B. dieses

mit einen Texteditor

#!/bin/bash

killall -9 iceape-bin
killall -9 firefox-bin

das speicherst Du als "mein-name".sh

dann auf einer Konsole das Script noch ausführbar machen mit

$ chmod 755 "mein-name".sh

starten/ausführen kannst Du es mit dem Befehl

./"mein-name".sh

auf einer Konsole oder Du legst Dir einen Starter in der Menüleiste dafür an.

Bemerkung: z.B. killall -9 firefox-bin - sagt der Prozess firefox-bin (die Anwendung firefox wird sofort ohne Rückmeldung beendet) den Prozessnamen einer Anwendung bekommt man auf einer Konsole mit $ ps x
raus.

Mfg
Ich kannte mal einen der einen kannte und der kannte sich aus.

latenite
Beiträge: 688
Registriert: 14.05.2007 01:04:23

Re: alle Fenster auf einmal schliessen...script/Programm

Beitrag von latenite » 15.06.2008 15:36:25

ja aber dann muss ich ja die namem der zu killenden Anwendung vorher kenne um sie ins script zu schreiben. Ich bin ja kein Hellseher :)

Was wenn ich mal "xmms"
offen habe und das nicht im script steht?...

:roll:

cosmac
Beiträge: 4576
Registriert: 28.03.2005 22:24:30

Re: alle Fenster auf einmal schliessen...script/Programm

Beitrag von cosmac » 15.06.2008 18:30:49

hi,
latenite hat geschrieben:ja aber dann muss ich ja die namem der zu killenden Anwendung vorher kenne um sie ins script zu schreiben. Ich bin ja kein Hellseher :)
ach, aber das arme kleine Script soll dann zaubern können :)

Ob das überhaupt eine gute Idee ist, vergessene Editor-Fenster so
pauschal zu schließen, möchte ich bezweifeln. Mit "kill -9" ist der
Datenverlust jedenfalls vorprogrammiert, mit ALT-F4 wie hier unten
geht's hoffentlich besser, bei mir funktioniert's,
aber: Benutzung auf eigene Gefahr.

Also gut. Mal angenommen, wir wollen nur die "großen" Fenster
schließen und Panels, Taskleisten usw. sollen nicht verschwinden.
Dann brauchen wir eine Liste namens caw.ignore, in der diese
Fenster drinstehen, für xfce sieht sie ungefähr so aus:

Code: Alles auswählen

(has no name)
xfwm4
xfce4
xfce-mcs-manager
x-session-manager
Thunar
orageclock
Die erste Zeile muss so stehen bleiben, damit werden unsichtbare
Fenster ignoriert, die sowieso nicht auf ALT-F4 reagieren. Thunar ist
ein Beispiel für ein Programm, das sich so nicht beenden lässt.
Mit xwininfo kann man mehr Kandidaten für diese Liste rausfinden.

Damit kann ein Script feststellen, ob überhaupt Fenster zu schließen
sind und dann in einer Schleife jedem Fenster ein ALT-F4 schicken:

Code: Alles auswählen

#!/bin/bash
# caw:  close all windows

DIR=$(dirname $0)

while [ $(xwininfo -root -tree | grep '  0x' | grep -v -f $DIR/caw.ignore | wc -l) -ne "0" ] ; do
   xte "keydown Alt_L" "key Tab" "keyup Alt_L"
   xte "keydown Alt_L" "key F4" "keyup Alt_L"
done
Das Script und caw.ignore müssen im gleichen Verzeichnis stehen und
das Script muss mit dem vollen Pfad gestartet werden, am besten mit
dem Klick-auf-ein-Icon-Start-Mechanismus des Desktops.
Beware of programmers who carry screwdrivers.

Antworten