Also so weit ich weiß trennt das ; einfach nur zwei befehle... und & brauch man hier nicht, weil die eh im hintergrund gestartet werden...
wenn ich den Befehl in der Konsole aufrufe funktioniert das auch alles, aber nicht im Anwendungsstartet im Panel, da will ich das haben....
Naja, das das funktioniert stimmt zwar, aber deine Begründung nicht
Wenn du einen Befehl mit ; abschließt, wartet die bash normalerweise darauf, bis der Befehl beendet wurde, bevor es das Skript weiter fortsetzt. Bei dem gnome-terminal Befehl ist es halt so, dass der Befehl ansich das Terminal in einem neuen Prozess startet und danach beendet wird.
Deshalb wird ein "gnome-terminal ; gnome-terminal" auch 2 Terminals öffnen, weil der Befehlsprozess von "gnome-terminal", nicht dem des angezeigten Terminals entspricht.
Wie währe denn diese Lösung:
Eine Datei gnome-terminal-two in ~/bin ablegen:
|
Quellcode
|
1
2
3
|
#!/bin/bash
gnome-terminal
gnome-terminal
|
Datei ausführbar machen:
|
Quellcode
|
1
|
chmod +x ~/bin/gnome-terminal-two
|
Und dann musst du nur in deinem Starter gnome-termina-two als Befehl verwenden.
mfg pyjo