Tmux Cheatsheet#
Tmux (Terminal Multiplexer) permet de créer plusieurs sessions de terminal persistantes. Indispensable pour le travail à distance !
🚀 Installation#
1
2
3
4
5
6
7
8
9
10
| # Ubuntu/Debian
sudo apt install tmux
# CentOS/RHEL/Fedora
sudo yum install tmux
# ou
sudo dnf install tmux
# macOS
brew install tmux
|
📚 Concepts de base#
- Session : Environnement de travail persistant
- Window : Onglet dans une session (comme les onglets de navigateur)
- Pane : Division d’une fenêtre en plusieurs panneaux
⌨️ Préfixe par défaut#
Le préfixe par défaut est Ctrl-b
. Toutes les commandes tmux commencent par ce préfixe.
🖥️ Gestion des sessions#
Commandes de base#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| # Nouvelle session
tmux new-session -s nom-session
tmux new -s nom-session
# Lister les sessions
tmux list-sessions
tmux ls
# Se reconnecter à une session
tmux attach-session -t nom-session
tmux a -t nom-session
# Détacher de la session courante
tmux detach
# Tuer une session
tmux kill-session -t nom-session
|
Raccourcis dans tmux#
Raccourci | Action |
---|
Ctrl-b d | Détacher de la session |
Ctrl-b s | Lister et changer de session |
Ctrl-b $ | Renommer la session courante |
🪟 Gestion des fenêtres#
Raccourci | Action |
---|
Ctrl-b c | Créer nouvelle fenêtre |
Ctrl-b n | Fenêtre suivante |
Ctrl-b p | Fenêtre précédente |
Ctrl-b 0-9 | Aller à la fenêtre N |
Ctrl-b l | Basculer vers dernière fenêtre |
Ctrl-b w | Lister les fenêtres |
Ctrl-b , | Renommer la fenêtre |
Ctrl-b & | Fermer la fenêtre |
Ctrl-b f | Rechercher une fenêtre |
📱 Gestion des panneaux#
Division des panneaux#
Raccourci | Action |
---|
Ctrl-b " | Division horizontale |
Ctrl-b % | Division verticale |
Ctrl-b x | Fermer le panneau courant |
Ctrl-b ! | Convertir panneau en fenêtre |
Navigation entre panneaux#
Raccourci | Action |
---|
Ctrl-b ↑↓←→ | Naviguer entre panneaux |
Ctrl-b q | Afficher numéros des panneaux |
Ctrl-b o | Panneau suivant |
Ctrl-b ; | Dernier panneau actif |
Ctrl-b { | Échanger avec panneau précédent |
Ctrl-b } | Échanger avec panneau suivant |
Redimensionnement#
Raccourci | Action |
---|
Ctrl-b Ctrl-↑ | Agrandir vers le haut |
Ctrl-b Ctrl-↓ | Agrandir vers le bas |
Ctrl-b Ctrl-← | Agrandir vers la gauche |
Ctrl-b Ctrl-→ | Agrandir vers la droite |
Ctrl-b Alt-1 | Layout horizontal |
Ctrl-b Alt-2 | Layout vertical |
Ctrl-b Alt-3 | Layout principal horizontal |
Ctrl-b Alt-4 | Layout principal vertical |
Ctrl-b Alt-5 | Layout mosaïque |
Ctrl-b Espace | Changer de layout |
📋 Mode copie#
Raccourci | Action |
---|
Ctrl-b [ | Entrer en mode copie |
Espace | Commencer la sélection |
Entrée | Copier la sélection |
Ctrl-b ] | Coller |
q | Quitter le mode copie |
Navigation en mode copie#
Raccourci | Action |
---|
h,j,k,l | Déplacement (style vi) |
↑↓←→ | Déplacement (flèches) |
w | Mot suivant |
b | Mot précédent |
g | Début du buffer |
G | Fin du buffer |
0 | Début de ligne |
$ | Fin de ligne |
⚙️ Configuration (.tmux.conf)#
Exemple de configuration dans ~/.tmux.conf
:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| # Changer le préfixe de Ctrl-b à Ctrl-a
unbind C-b
set -g prefix C-a
bind C-a send-prefix
# Recharger la config avec Ctrl-a r
bind r source-file ~/.tmux.conf \; display-message "Config rechargée!"
# Améliorer les couleurs
set -g default-terminal "screen-256color"
# Activer la souris
set -g mouse on
# Commencer la numérotation à 1
set -g base-index 1
setw -g pane-base-index 1
# Diviser les panneaux avec | et -
bind | split-window -h
bind - split-window -v
# Navigation entre panneaux avec Alt+flèches (sans préfixe)
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D
# Redimensionnement rapide
bind -r H resize-pane -L 5
bind -r J resize-pane -D 5
bind -r K resize-pane -U 5
bind -r L resize-pane -R 5
|
🔥 Commandes utiles#
1
2
3
4
5
6
7
8
9
10
11
| # Nouvelle session avec fenêtre nommée
tmux new -s projet -n editor
# Exécuter commande dans session spécifique
tmux send-keys -t session-name "ls -la" Enter
# Capturer contenu d'un panneau
tmux capture-pane -t session:window.pane -p
# Sauvegarder l'historique d'un panneau
tmux capture-pane -S -1000 -t session:window.pane -p > historique.txt
|
🔧 Plugins utiles#
TPM (Tmux Plugin Manager)#
1
2
3
4
5
6
7
8
9
10
| # Installation
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
# Dans .tmux.conf
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
# Initialiser TPM
run '~/.tmux/plugins/tpm/tpm'
|
Plugins populaires :
tmux-resurrect
: Sauvegarder/restaurer sessionstmux-continuum
: Sauvegarde automatiquetmux-yank
: Améliore la copietmux-pain-control
: Meilleure gestion des panneaux
💡 Astuces pro#
- Session nommées : Toujours nommer vos sessions pour mieux vous y retrouver
- Scripting : Automatisez la création de sessions avec des scripts
- SSH + Tmux : Indispensable pour le travail à distance
- Layouts : Utilisez les layouts prédéfinis pour organiser vos panneaux
- Mode souris : Activez-le pour une meilleure ergonomie
Tmux transformera votre façon de travailler en terminal ! Pratiquez ces commandes régulièrement pour les mémoriser.