Unterstützt von @ nickguletskiis Antwort und meinem eigenen Kommentar unter seiner Antwort und inspiriert von @ grabantots Aufwertung meines Kommentars, ist dies meine bevorzugte Methode, besonders wenn ich möchte, dass das Terminal geöffnet bleibt, damit ich es dann manuell verwenden kann.
Ex. Verwendung: Dies ist sehr nützlich, um Ihre Startprogramme zu erweitern, damit dieses Skript ausgeführt, ein Terminal geöffnet, eine Registerkarte im Terminal erstellt und benannt und ein Befehl für Sie ausgeführt wird. Sie können auch einfach einen Symlink zu diesem Skript auf Ihrem Desktop hinzufügen. Ich benutze diesen Ansatz, um auf ein einzelnes Symbol auf meinem Desktop zu doppelklicken und es eine Reihe von Terminals (mit verschiedenen Registerkarten, die nach der Arbeit benannt sind, die ich in ihnen ausführen werde) und einzurichtenden Programmen öffnen zu lassen Meine Programmierumgebung zum Beispiel für die tägliche Arbeit.
Hier ist ein Beispiel, das einen einzelnen Tab öffnet, ihn als "Test" bezeichnet und dann den darin enthaltenen einfachen Befehl cd /etc; ls
ausführt. Der $SHELL
Teil am Ende zwingt die Shell, offen zu bleiben, damit Sie ihre Ausgabe sehen und sie weiter verwenden können (das habe ich irgendwo anders bei Stack Overflow gelernt):
gnome-terminal --tab --title="test" --command="bash -c 'cd /etc; ls; $SHELL'"
Hier ist ein etwas komplizierteres Beispiel, das 3 verschiedene Tabs im selben Gnome-Terminal öffnet. Genau das macht meine Desktop-Verknüpfung, damit ich eine Reihe von Programmierfenstern gleichzeitig öffnen kann:
gnome-terminal --tab --title="tab 1" --command="bash -c 'cd /etc; ls; $SHELL'" --tab --title="tab 2" --command="bash -c 'cd ~; ls; $SHELL'" --tab --title="tab 3" --command="bash -c 'cd ~/temp3; ls; $SHELL'"
Hier ist eine Aufschlüsselung des obigen Befehls:
gnome-terminal
= Öffne ein Gnome-Terminal
--tab
= öffne eine einzigartige Registerkarte für das, was als nächstes kommt
--title="tab 1"
= Titel dieses Tabs "Tab 1"
--command="bash -c 'cd /etc; ls; $SHELL'"
= führe den bash -c 'cd /etc; ls; $SHELL'
Befehl aus, den ich mir gerade als Beispiel ausgedacht habe; Das macht es:
bash -c
sagt, es ist ein Bash-Befehl
cd /etc
= 'c'hange' d'irectory in den "/ etc" Pfad
ls
= 'Der Inhalt dieses Verzeichnisses ist nicht vorhanden
$SHELL
= Dieser kryptische Leckerbissen wird benötigt, um die Shell offen zu halten, damit Sie damit arbeiten können. Wenn Sie möchten, dass die Shell geöffnet wird, führen Sie Ihren Befehl aus und schließen Sie ihn. Entfernen Sie einfach diesen Teil. Ich möchte jedoch, dass die Registerkarte geöffnet bleibt, damit ich die Programmierung magisch gestalten kann. :)
- Wir beginnen dann wieder bei dem
--tab
Teil, um Tab 2 zu produzieren, und dann noch einmal für Tab 3. Passen Sie es nach Herzenslust an.
Bildschirmfoto: