Comment afficher plus d'un terminal simultanément

46

Parfois, lorsque je travaille, j'utilise plus d'un terminal et je trouve qu'il est gênant de basculer entre eux lorsque tous ont été appelés à l'aide de Ctrl+ Alt+ T. Existe-t-il un programme ou un terminal qui, après le lancement, me fournirait 4 terminaux indépendants, chacun occupant 1/4 de l'écran tout en facilitant le basculement entre eux, par exemple à l'aide de la Tabtouche?

Al Bundy
la source
2
Redimensionnez simplement les fenêtres de votre terminal afin qu’elles s’inscrivent toutes dans un coin de l’écran. Le terminal peut également avoir des onglets, ce qui pourrait aider. Faites un clic droit sur la fenêtre et sélectionnez New Tab.
TheWanderer
2
La [TAB]clé est déjà utilisée pour l'auto-complétion dans le terminal. Si vous deviez intervertir les instances par exemple [ALT]+[TAB], il serait vraiment plus facile d'utiliser des fenêtres positionnées, comme suggéré par @ Zacharee1.
Peter Nerlich
2
Si vous êtes très sérieux à ce sujet, consultez des gestionnaires de fenêtres en mosaïque tels que Xmonad ou Awesome .
gauche du
1
Qu'est-ce qui ne va pas avec l'ouverture d'un nouveau terminal et d'un alt-tab?
psusi
Je devrais ouvrir plusieurs terminaux et le redimensionner à chaque fois que je commence à travailler. Cela tuerait l'un des meilleurs avantages de Linux: la personnalisation.
Al Bundy

Réponses:

85

Vous avez besoin de Terminator :

sudo apt-get install terminator

Terminator 4 fenêtres

Pour quatre terminaux au démarrage, procédez comme suit:

  • Terminator
  • Fractionner le terminal Ctrl+ Shift+O
  • Fractionner le terminal supérieur Ctrl+ Shift+O
  • Fractionner le terminal inférieur Ctrl+ Shift+O
  • Ouvrez les préférences et sélectionnez Layouts
  • Cliquez Addet entrez un nom de mise en page utile etEnter
  • Fermer les préférences et Terminator
  • Ouvrez Terminator avec cette commande:

    terminator --maximise --layout=<your_layout_name>
    

    ou avec cette commande:

    terminator --maximise --borderless --layout=<your_layout_name>
    

Sautez entre les fenêtres du terminal avec Ctrl+ Tab.

Vous pouvez affecter votre commande de terminateur personnel à Ctrl+ Alt+ Tdans Paramètres du clavier> Raccourcis. ( Merci @ Wilf )

Bien sûr, vous pouvez également créer un terminator.desktopfichier. Copiez le fichier de bureau d'origine et apportez vos modifications:

cp /usr/share/applications/terminator.desktop ~/.local/share/applications/
nano ~/.local/share/applications/terminator.desktop
UN B
la source
1
Notez que vous pouvez également affecter la terminator ...commande à Ctrl + Alt + T dans Paramètres du clavier> Raccourcis
Wilf le
Est-il possible de définir quelle fenêtre de terminal est active après le démarrage? Lorsque je le lance, la fenêtre active est en bas et je voudrais que la fenêtre du terminal actif soit en haut, mais je ne peux pas le gérer.
Al Bundy
2
Malheureusement, je ne peux pas recommander Terminator ces jours-ci. Aussi génial qu’il fût, le projet n’est pratiquement plus entretenu et utilise une version ancienne (environ 4 ans) de VTE (qui est le widget effectuant l’émulation de terminal proprement dite). Autrement dit, même s’il est cool d’avoir de nombreuses fenêtres côte à côte, ce qui se passe à l’intérieur de chaque fenêtre souffrira de nombreux problèmes. Voir aussi bugs.launchpad.net/terminator/+bug/1030562
egmont
2
@AB oui je sais, cette branche contient mon travail :) Bien qu'elle utilise la VTE la plus récente et bien meilleure, l'interface utilisateur qui l'entoure (Terminator elle-même) est en cours d'exécution, avec pas mal de bugs absents de la version par défaut de Gtk + -2. Votre réponse à la apt-get install terminatorcommande fait clairement référence à la version Gtk + -2 qui utilise l’ancien VTE. Pour référence, il est en effet utile de mentionner la version Gtk + -3 qui n’est pas encore stable et n’a pas encore été livrée par Ubuntu, mais que quelqu'un pourrait essayer.
egmont
4
Vous avez besoin de Terminator . Épique.
maryisdead
13

Vous pouvez démarrer 4 terminaux avec Ctrl+ Alt+ Tet les adapter aux bords de votre écran avec Ctrl+ Alt+ Numpad[1,3,7,9]ou gauche / droite avec Ctrl+ Alt+ Numpad[4/6]ou haut / bas Ctrl+ Alt+ Numpad[8/2]et basculer avec Alt+ Tabvers ONE Terminal et avec Alt+ key above Tabentre les terminaux, le cas échéant. .

Ou

Vous pouvez utiliser des tabulations avec Ctrl+ Shift+ Tet basculer entre les terminaux avec Alt+ Page-Up/ Page-Down.

TANIÈRE
la source
3
Sous quel environnement de bureau le Ctrl + Maj + Numpad fonctionne-t-il?
Wilf
J'ai une installation Ubuntu standard avec Unity
DEN
C'est Ctrl + Alt +
Pavé numérique
9

Comme autre alternative, je suggérerais d’utiliser byobu.

Byobu est un gestionnaire de fenêtres et un multiplexeur de terminaux open source GPLv3. Il a été conçu à l'origine pour apporter des améliorations élégantes à l'écran GNU Screen, par ailleurs fonctionnel et simple, pour la distribution du serveur Ubuntu. Byobu inclut désormais des profils améliorés, des raccourcis clavier, des utilitaires de configuration et des notifications d'état du système basculables pour le gestionnaire de fenêtres GNU Screen et le multiplexeur de terminaux Tmux plus moderne, et fonctionne sur la plupart des distributions Linux, BSD et Mac.

L'avantage est qu'il est basé sur du texte, ce qui signifie que vous pouvez l'utiliser sans environnement graphique! Ceci est très utile lorsqu'il s'agit de serveurs, qui souvent n'ont pas d'interface graphique.

Vous avez même une barre d'état inférieure avec beaucoup d'informations utiles, telles que la date / heure, la charge moyenne, etc.

Les raccourcis que vous devez savoir si vous utilisez Byobu sont les suivants:

  • F2 crée un nouvel onglet.
  • Shift+ F2crée un nouvel onglet divisé (cela divise votre onglet actuel horizontalement).
  • F3et F4pour basculer entre les onglets.
  • F9 configurer Byobu.

sudo apt-get install byobu va installer Byobu.

En prime, étant un multiplexeur de terminal, cela signifie que vous ne perdrez pas votre session et vos onglets si vous avez fermé le terminal par erreur. Et vous pouvez exécuter byobudans un autre terminal et obtenir des sorties synchronisées.

Il existe même des scripts pour enregistrer les dispositions si vous souhaitez conserver la session après les redémarrages.

Léo Lam
la source
1
l'URL du domaine byobu a été remplacé par byobu.org
Vijay
7

Personnellement, j'utilise emacsavec M-x ansi-termou M-x shellselon ce que je fais.

Mais si vous cherchez juste un multiplexeur de terminal, il y a toujours le vénéré tmux:

https://github.com/tmux/tmux

Edit: JoKeR a souligné que vous pouvez installer tmuxavec apt-get:

$ sudo apt-get install tmux
Grant Hulegaard
la source
1
vous pouvez installer tmux avec: sudo apt-get install tmuxvous devriez le mentionner, je suppose.
JoKeR
Jamais utilisé tmuxmoi-même, juste savoir à ce sujet. Merci pour la clarification si je vais le mettre en haut.
Grant Hulegaard le
5

Redimensionnez simplement les fenêtres de votre terminal afin qu’elles s’inscrivent toutes dans un coin de l’écran. Le terminal peut également avoir des onglets, ce qui pourrait aider. Faites un clic droit sur la fenêtre et sélectionnez New Tab.

Voici comment rendre les fenêtres capables de redimensionner aux angles:

  1. Courez sudo apt-get install compizconfig-settings-manager.
  2. Exécuter sudo ccsmou rechercher ccsmdans Unity Dash.
  3. Faites défiler jusqu'à trouver Grid, sous Window Management. Assurez-vous qu'il est activé.
  4. Accédez à l' Corners / Edgesonglet et modifiez les Corneroptions dans leurs coins correspondants.
Le vagabond
la source
1
Ensuite, je ne peux pas regarder tous les onglets en même temps et je dois le redimensionner à chaque fois que j'ouvre un terminal.
Al Bundy
Il existe un moyen de faire en sorte que les fenêtres soient redimensionnées au quart de l'écran lorsqu'elles sont déplacées dans un coin. Laissez-moi le trouver et je l’ajouterai à ma réponse.
TheWanderer
3

Vous pouvez utiliser tmux , un multiplexeur de terminaux.

sudo apt-get install tmux

Vous pouvez utiliser ce script pour quatre panneaux 4pSession, créez-le avec

mkdir -p ~/bin
touch ~/bin/4pSession
chmod +x ~/bin/4pSession
nano ~/bin/4pSession

et ajoutez le code ci-dessous

#!/usr/bin/env bash

# if the session is already running, just attach to it.
tmux has-session -t 4panel
if [ $? -eq 0 ]; then
  sleep 1
  tmux attach -t 4panel
else 
  tmux new-session -d -s 4panel
  tmux split-window -v
  tmux split-window -h
  tmux select-pane -t 0
  tmux split-window -h
  tmux select-pane -t 0
  tmux -2 attach-session -d
fi

Que vous puissiez créer un fichier de bureau:

nano ~/.local/share/applications/tmux.desktop

avec ce contenu:

[Desktop Entry]
Name=tmux
Comment=a terminal multiplexer
Exec=/<path_to_script>/4pSession
Icon=terminal
Terminal=true
Type=Application
Categories=Terminal;

Déplacez-vous entre les panneaux avec Ctrl+ Bet que ou ou ou

entrez la description de l'image ici

UN B
la source
1

Ma contribution brute à cette question: installez wmctrlet ajustez le script ci-dessous, qui ouvre et positionne quatre fenêtres de terminal, à votre écran. Commencez par connaître la taille de votre écran avec xwininfo -rootpuis ajustez les -eparamètres (ils sont dans cet ordre 0, position x, position y, largeur, hauteur). Les chiffres que j'utilise ci-dessous ne sont qu'un exemple

#!/bin/bash
# Author: Serg Kolo
# Date: 2/18/2015
# Description: Open 4 terminals and position them






gnome-terminal -t WINDOW-ONE &
gnome-terminal -t WINDOW-TWO &
gnome-terminal -t WINDOW-THREE &
gnome-terminal -t WINDOW-FOUR &

sleep 0.5
wmctrl -r WINDOW-ONE -e 0,0,0,500,250 &
sleep 0.5
wmctrl -r WINDOW-TWO -e 0,0,384,500,250 &
sleep 0.5
wmctrl -r WINDOW-THREE -e 0,500,0,500,250 &
sleep 0.5
wmctrl -r WINDOW-FOUR -e 0,500,384,500,250 &

Vous pouvez relier ceci sous forme de raccourci, par exemple à Ctrl + I ou autre chose. Une autre idée, sans installer wmctrl, est d'ouvrir l' --geometry=option 4

Sergiy Kolodyazhnyy
la source
0

Je recommande fortement tmux. Il offre une multitude de personnalisations et une indépendance totale de la souris (si cela pose un problème). Vous pouvez diviser les écrans horizontalement, verticalement, basculer entre eux avec quelques touches, laisser les sessions ouvertes et les reconnecter ultérieurement, etc.

Hopping Bunny
la source
Veuillez expliquer comment procéder (voir Comment rédiger une bonne réponse? ).
David Foerster
1. Si vous utilisez centos, vous pouvez vous rendre sur le lien pour récupérer le dernier régime et l'installer. Si vous rencontrez des erreurs sur les dépendances, je tombe sur un excellent tutoriel ici: lien 2. Si vous êtes sur Ubuntu, c’est simple: sudo apt-get install tmux 3. Si vous maîtrisez bien la compilation de paquetages, le code source est disponible sur sourceforge: link
Hopping Bunny
1
Veuillez modifier votre réponse si vous souhaitez ajouter des informations.
David Foerster
0

Avec 4 fenêtres de terminal ouvertes, et tout en travaillant dans l’une d’elles, je peux simplement basculer entre elles avec Alt + `(tick gauche) si vous souhaitez utiliser le clavier, ou cliquez simplement sur l’icône du lanceur du terminal pour faire apparaître toutes ses fenêtres et fenêtres. cliquez sur celui choisi.

entrez la description de l'image ici

Mon installation est Ubuntu 14.04, avec le bureau par défaut (Unity 3D) et mis à jour à ce jour.

Je ne comprends pas pourquoi les gens compliquent les choses et installent des produits tiers lorsque l'installation par défaut d'Ubuntu fournit déjà cette fonctionnalité.

Sri
la source
0

vous pouvez utiliser Gnu Screen pour cela également, et utiliser une division verticale et une division horizontale.

vous pouvez les mettre dans votre ~/.screenrcfichier de configuration. J'ai été capable de diviser en utilisant la plupart des écrans GNU, avec les ajustements appropriés au fichier .screenrc.

Certains combos de ci-dessous devraient vous faire dans votre .screenrc.

screen -t tl 1 bash
split 
focus down
screen -t bl 3 bash
split -v
focus down
screen -t br 4 bash
select 1
split -v
focus down
screen -t tr 2 bash

Je l'avais réglé pour l'écran 6 fois. Heres ma config résiduelle de cette

 30 ## 1 a local bash
 31 # screen -t host03 1 bash
 32 #sessinoname blamb1
 33
 34 ## 2 ssh to host04
 35 # split -v
 36 # focus
 37 # select 2
 38 # resize -6
 39 # screen -t host04 2 ssh host04
 40 # caption string "%{kk}XXXXXXX"
 41
 42 ## 3 bashed
 43 # focus
 44 # select 1
 45 # split
 46 # focus
 47 # select 3
 48 # screen -t bashed 3  bash
 49 #exec ssh host04
 50 # caption string "%{kk}XXXXXXX"
 51
 52 ## 4 bashedup
 53 # split
 54 # focus down
 55 # screen -t bashedup 4 bash
 56 # caption string "%{kk}XXXXXXX"
 57
 58 ## 5 compass
 59 # split
 60 # focus down
 61 # resize -14
 62 # screen -t compass 5 bash
 63 # leave caption commented till resize works
 64 #caption string "%{kk}XXXXXXX"
 65
 66 #focus up
 67
 68
 69 ## 5mysql
 70 # exec mysql -p
 71 # screen -t mysql 5 mysql
 72
 73 ## 6php
 74 # screen -t php.ini 6 vim /etc/php/php.ini
 75 # select php.ini
 76 # chdir /etc/php
 77 # exec vim php.ini
Brian Thomas
la source
0

vous pouvez utiliser l'application "screen"

Installez l'écran en exécutant la commande suivante:

apt-get install screen

Pour vérifier que l'écran a été installé, exécutez

screen -v

Dans une session d'écran, vous pouvez créer une nouvelle fenêtre en appuyant sur CTRL + A, puis sur C. Votre ancienne fenêtre restera active et vous pourrez effectuer d'autres tâches. Pour basculer d’une fenêtre à l’autre, appuyez sur CTRL + A, puis sur N (pour la fenêtre suivante) ou sur CTRL + A, puis sur P

Pradyumna Sagar
la source
0

Il existe des raccourcis intégrés pour cela, et une navigation facile aussi.

Ctrl + Alt + T - appuyez une fois sur pour démarrer le 1er terminal
Ctrl + Shift + T - appuyez 3 fois sur, pour obtenir 3 autres terminaux sous forme d'onglets, dans la même fenêtre du 1er terminal
Alt + 1ou Alt + 2ou Alt + 3ou Alt + 4- chacun d'eux basculera sur l'onglet / terminal correspondant.

J'espère que ça t'as aidé.

Manohar Reddy Poreddy
la source