Ouvrez un nouvel onglet dans gnome-terminal à l'aide de la ligne de commande
Je suis sous Ubuntu 9.04 x64 et quand j'écris:
gnome-terminal --tab
Au terminal, je l'attends pour ouvrir un nouvel onglet dans la même fenêtre de terminal. Mais il s'ouvre dans une nouvelle fenêtre.
J'ai trouvé que son intention est d'ouvrir un nouvel onglet dans une nouvelle fenêtre, c'est à dire, si j'écris:
gnome-terminal --tab --tab
Il va ouvrir une nouvelle fenêtre avec deux onglets.
Donc la question est, comment puis-je ouvrir un nouvel onglet dans la actuel fenêtre à l'aide d'une commande dans gnome-terminal
?
- si vous écrivez à l'gnome-terminal, de toute façon, pourquoi vous ne pouvez appuyez simplement sur ctrl+maj+t pour ouvrir un nouvel onglet 😉
- Et comment suis-je censé appuyez sur
Ctrl+Shift+T
lorsque la commande est exécutée à partir d'un fichier de script? (Entendu quelque chose qui s'appelle D-Bus peut le faire tout de même)! - Chaque fois que je démarre mon PC, j'ai besoin d'ouvrir un peu les onglets dans mon gnome-terminal. Et automatifying qui me font me sentir un peu plus geek. (Comme ils disent) la Paresse est un programmeur est la caractéristique.
- threevirtues.com 🙂
- Stack Overflow est un site pour la programmation et les questions de développement. Cette question semble être hors-sujet, car il n'est pas sur la programmation ou le développement. Voir Quels sont les sujets que pouvez-vous nous parler ici dans le Centre d'Aide. Peut-être Super-Utilisateur ou Unix & Linux Stack Exchange serait un meilleur endroit pour demander cela.
Vous devez vous connecter pour publier un commentaire.
Ce sera de l'auto de déterminer la borne correspondante et ouvre l'onglet en conséquence.
WID= xprop -root | grep "_NET_ACTIVE_WINDOW(WINDOW)"| awk '{print $5}'; xdotool windowfocus $WID; xdotool key ctrl+shift+t $WID
sleep 1; xdotool type --delay 1 --clearmodifiers "your Command"; xdotool key Return;
pour exécuter une commande.gnome-terminal
droit? Est-il un moyen de la faire basculer vers le terminal si par exemple, exécuté comme un script à partir de l'intérieur de nautilusxdotool key 'ctrl+shift+t'
va faire le travail (dans le terminal actuel)Vous pouvez également chaque onglet exécuter une commande set.
gnome-terminal --tab -e "cd /tmp"
gnome-terminal --tab --working-directory="/home/user/X/Y/"
. Je ne pas pourquoi, mais"~/X/Y/"
n'a pas de travail.gnome-terminal --tab -e "tail -f file_a" --tab -e "tail -f file_b"
, le terminal de gnome s'ouvrira avec deux onglets, chaque onglet aura respectifs contenu du fichier, mais va fermer le moment d'envoyer ^C. de Cette façon, vous montrer pourquoi il ne fonctionne pas, mais je ne sais pas comment remédier à cela.-e
semble être obsolète maintenant, je reçois un warnging "Option “-e” est obsolète et pourrait être supprimée dans une version ultérieure de gnome-terminal"., mais vous pouvez facilement séparer les commandes, commegnome-terminal --tab -- guard; gnome-terminal --tab -- rails runner MonitorRedisJob.perform_now
J'ai trouvé la façon la plus simple:
- Je utiliser
tmux
au lieu d'utiliser le terminal directement. Donc, ce que je veux, c'est vraiment une seule et simple de la commande/fichier shell pour construire le développementenv
avec plusieurstmux
windows. Le shell code est comme ci-dessous:'command 1'
fonctionnent mieux que des guillemets qui ne travaille que pour moi lorsque j'ai également spécifier--working-directory="/some/path/"
Un peu plus élaboré version (à utiliser dans une autre fenêtre):
De réunir un certain nombre de différents points ci-dessus, voici un script qui sera exécuté tous les arguments passés au script
vim new_tab.sh
:Suivant le rendre exécutable:
chmod +x new_tab.sh
Maintenant, vous pouvez l'utiliser pour exécuter tout ce que vous souhaitez dans un nouvel onglet:
./new_tab.sh "watch ls -l"
Juste au cas où, vous voulez ouvrir
ici, vous allez:
(même pour
mate-terminal
btw.)Je n'ai pas gnome-terminal installé, mais vous devriez être capable de faire cela en utilisant une DBUS appel sur la ligne de commande à l'aide de dbus-send.
Envisager d'utiliser Roxterm à la place.
ouvre un onglet dans la fenêtre actuelle.
Pour ceux qui cherchent une solution à ne pas utiliser la ligne de commande: ctrl+maj+t
Pour ouvrir plusieurs onglets dans la même fenêtre de terminal, vous pouvez aller avec la solution suivante.
Exemple de script:
osascript
est OSX(Apple)$HOME
variable d'environnement, ou de la OSX équivalent si c'est différent.