User Tools

Site Tools


informatique:logiciels:tmux

This is an old revision of the document!


Table of Contents

TMUX

TMUX est comme son nom l'indique un multiplexeur de terminaux, à l'instar de screen ou byobu. Il permet donc, notamment :

  • d'ouvrir plusieurs terminaux dans différents onglets
  • d'agencer plusieurs terminaux à l'écran (split vertical ou horizontal)
  • se déconnecter (détacher) de sa session pour la laisser tourner en fond, puis de s'y reconnecter (s'attacher) plus tard pour reprendre la main dessus

On lance l'outil depuis un terminal avec la commande tmux (il va créer une nouvelle session). Pour Lister les sessions existantes qui tournent en fond :

tmux ls
0: 3 windows (created Sat Oct 17 15:37:15 2020) [161x37]
3: 1 windows (created Sat Oct 17 18:42:39 2020) [161x37]

Pour se connecter (attach) à la session 0 : tmux a -t 0.

La barre du bas affiche, par défaut :

  • l'ID de session : [0]
  • l'ID de l'onglet : 0
  • le nom de la commande lancée dans l'onglet courant ; au début c'est le terminal par défaut, bash par exemple
  • le flag * qui indique sur quel onglet l'on est

Par exemple : [0] 0:bash*

Lorsqu'on est dans une session tmux, on utilise le préfixe Controle + b pour préciser à TMUX que ce qui va suivre est une instruction le concernant.

Les raccourcis

Session

Une fois la session lancée (tmux exécuté), on obtient un terminal lancé automatiquement dans une fenêtre (ou un onglet). Toutes les commandes sont à saisir en les préfixant de Ctrl + b (par défaut) suivi de :

  • c : pour créer un nouvel onglet ; ceux-ci sont affichés et numérotés dans la barre en bas de la fenêtre.
  • , : renommer l'onglet courant
  • <nb> : aller à l'onglet #<nb> (leur #<nb> est affiché devant leur nom, en bas de la fenêtre de la session)
  • & : tuer l'onglet courant
  • d : se détacher de la session courante. On sort de TMUX mais notre session continue de tourner en fond, avec les commandes qu'on a lancées dedans.
  • ) : se connecter à la session suivante, si elle existe
  • [ : rentre dans un mode qui permet de scroller dans l'historique de la fenêtre (q pour quitter ce mode)

Panels

Pour afficher plusieurs terminaux dans une même fenêtre, on va splitter celle-ci pour créer des panneaux ou volets (panels) :

  • % split vertical
  • split horizontal
  • <espace> : interverti l'organisation du panel (split vertical / horizontal)
  • flèches directionnelles : se déplacer entre les panels
  • Ctrl ou Alt + flèches dir : redimensionner le panel courant
  •  o : sélectionner le panel suivant
  • Ctrl + o : inverser l'emplacement de 2 panels
  • q : afficher les IDs des panels
  • <nb> : sélectionner le panel d'ID <nb>
  • z : afficher le panel courant en plein écran (même chose pour quitter le plein écran)
  • ! : placer le panneau courant dans un nouvel onglet
  • :join : permet de joindre un terminal déterminé (on peut le spécifier avec ses IDs), par ex : :join -v -s 3.0 -p 50 pour joindre le panneau #0 de l'onglet #3 et l'ajouter dans un split vertical découpé à 50% de la hauteur du panneau courant.
informatique/logiciels/tmux.1602955115.txt.gz · Last modified: 2020/10/17 17:18 by pteu