In der letzten Woche hatte ich hier kurz mein frisch entdecktes Terminalprogramm yakuake vorgestellt.

Heute mal ein kurzer Tipp - für mich selbst :-) - wie man grafische Programme (gemeint sind Programme mit GUI), Beispiel Firefox, aus einem beliebigen Terminalprogramm aufrufen kann.

Aufruf ohne Parameter

Am einfachsten wird das Programm (hier der Firefox) dann mit firefox aufgerufen.

Dadurch ist das aufgerufene Programm ein Subprozess des Terminalprogramms bzw. -prozesses. Das heißt, wird das Terminal mit Hilfe des X-Icons in der Fenstersteuerung geschlossen oder der aufrufende Shellprozess mit strg + c beendet, dann terminiert auch das aufgerufene Programm!

Aufruf als abhängiger Hintergrundprozess

Es gibt aber zum einen die Möglichkeit das Programm mittels firefox & als sog. Hintergrundprozess aufzurufen. Vorteil hier ist, dass ich die den Firefox aufrufende shell mittels strg + c beenden kann und trotzdem läuft das Programm/der Prozess Firefox weiter. Beende ich das Terminal, dann wird auch in dieser Aufrufvariante der Firefox geschlossen.

Aufruf als vom Terminal unabhängiger Hintergrundprozess

Um den Firefox als gänzlich vom Terminalprogramm unabhängigen Prozess zu starten, kann man dies mit firefox & disown tun. Schließt man nun das Terminal, so läuft Firefox weiter.

Warum überhaupt diese Aufrufe aus dem Terminal?

(a) es geht schneller aus dem Terminal, wenn ich da sowieso gerade schreibe und nur kurz etwas im Internet nachschlagen möchte und dazu, wie hier im Beispiel, den Firefox nutze. Erst zur Maus zu wechseln und durch die Menüs zu hangeln oder mittels Taste und Kommando das Terminal zu verlassen, dauert - bei mir - länger.

(b) dadurch das bei den ersten beiden Aufrufen, die das Programm vom Terminalprozess abhängig starten, stdin und stdout an das Terminal gebunden sind, kann man Fehlermeldungen des aufgerufenen Programms direkt mitverfolgen und quasi live "mit debuggen".

(c) weil man's kann :-)