SSH - Utilisation de tmux : Différence entre versions
(→Pane) |
|||
(12 révisions intermédiaires par le même utilisateur non affichées) | |||
Ligne 5 : | Ligne 5 : | ||
* [https://github.com/tmux/tmux/wiki Le dépôt Github du projet] | * [https://github.com/tmux/tmux/wiki Le dépôt Github du projet] | ||
* [https://www.hamvocke.com/blog/a-quick-and-easy-guide-to-tmux/ Un tuto rapide sur le sujet] | * [https://www.hamvocke.com/blog/a-quick-and-easy-guide-to-tmux/ Un tuto rapide sur le sujet] | ||
+ | * [https://medium.com/better-programming/code-and-develop-more-productively-with-terminal-multiplexer-tmux-eeac8763d273 Autre tuto assez complet sur tmux] | ||
= Utilité = | = Utilité = | ||
Ligne 28 : | Ligne 29 : | ||
=== Ouvrir une nouvelle session === | === Ouvrir une nouvelle session === | ||
− | + | # tmux new -s jpd1 | |
+ | |||
+ | === Renommer une session === | ||
+ | |||
+ | # tmux rename-session -t <n° session> <nom session> | ||
=== Quitter cette session === | === Quitter cette session === | ||
Ligne 38 : | Ligne 43 : | ||
=== Se détacher d'une session (mais conserver la session active) === | === Se détacher d'une session (mais conserver la session active) === | ||
− | + | # tmux detach | |
=== Lister les sessions en cours === | === Lister les sessions en cours === | ||
− | + | # tmux list-sessions | |
− | |||
− | |||
jpd1: 1 windows (created Thu Mar 21 16:21:56 2019) [192x58] | jpd1: 1 windows (created Thu Mar 21 16:21:56 2019) [192x58] | ||
− | + | # tmux new -s jpd2 | |
[detached (from session jpd2)] | [detached (from session jpd2)] | ||
− | + | # tmux list-sessions | |
jpd1: 1 windows (created Thu Mar 21 16:21:56 2019) [192x58] | jpd1: 1 windows (created Thu Mar 21 16:21:56 2019) [192x58] | ||
jpd2: 1 windows (created Thu Mar 21 16:25:49 2019) [192x58] | jpd2: 1 windows (created Thu Mar 21 16:25:49 2019) [192x58] | ||
+ | |||
+ | Autre méthode: | ||
+ | |||
+ | # tmux ls | ||
+ | |||
+ | === Se rattacher à une session existante === | ||
+ | |||
+ | # tmux attach -t <n°session> | ||
== Pane == | == Pane == | ||
Ligne 65 : | Ligne 76 : | ||
(C-b) <flèche de direction> | (C-b) <flèche de direction> | ||
+ | |||
+ | === Passer un panneau en plein écran === | ||
+ | |||
+ | (C-b) z | ||
+ | |||
+ | Même manip pour repasser le panneau à sa taille initiale. | ||
+ | |||
+ | === Scroller dans un pane === | ||
+ | |||
+ | Activer le scroll: | ||
+ | |||
+ | (C-b] [ | ||
+ | |||
+ | A partir de là on peut utiliser les touches de scroll (pageup/pagedown) pour remonter dans la sortie du pane. | ||
+ | |||
+ | Quitter le mode scroll: | ||
+ | |||
+ | q | ||
== Windows == | == Windows == |
Version actuelle datée du 11 février 2021 à 09:36
Sommaire
Introduction
Cf ces liens:
- La page Wikipedia sur tmux
- Le dépôt Github du projet
- Un tuto rapide sur le sujet
- Autre tuto assez complet sur tmux
Utilité
Tmux, comme l'indique Wikipedia, est un multiplexeur de terminaux.
L'idée est de gérer, dans une session terminal (en local ou à distance via SSH), des terminaux virtuels.
Ces terminaux virtuels et les sessions associées peuvent continuer à fonctionner même quand votre session de terminal initial est fermée. On peut ainsi par exemple lancer une commande très longue dans un terminal virtuel, fermer sa session, revenir le lendemain et reprendre la main sur le terminal virtuel pour vérifier le résultat.
Les commandes les plus utiles
Notion de prefix
Les commandes tmux peuvent être appellées via l'utilisation d'un préfixe et d'une commande.
Le préfixe par défaut dans tmux est:
C-b
Ceci signifie qu'il faut maintenir la touche contrôle enfoncée et taper le b. A ce stade, tmux attend une commande.
Sessions
Ouvrir une nouvelle session
# tmux new -s jpd1
Renommer une session
# tmux rename-session -t <n° session> <nom session>
Quitter cette session
exit
ou
ctrl+D
Se détacher d'une session (mais conserver la session active)
# tmux detach
Lister les sessions en cours
# tmux list-sessions jpd1: 1 windows (created Thu Mar 21 16:21:56 2019) [192x58] # tmux new -s jpd2 [detached (from session jpd2)] # tmux list-sessions jpd1: 1 windows (created Thu Mar 21 16:21:56 2019) [192x58] jpd2: 1 windows (created Thu Mar 21 16:25:49 2019) [192x58]
Autre méthode:
# tmux ls
Se rattacher à une session existante
# tmux attach -t <n°session>
Pane
Diviser sa session en panneaux (pane)
Splitter horizontalement (1 pane à gauche, 1 à droite):
(C-b) %
Splitter verticalement (1 pane en haut, 1 en bas):
(C-b) "
Se déplacer entre les panneaux
(C-b) <flèche de direction>
Passer un panneau en plein écran
(C-b) z
Même manip pour repasser le panneau à sa taille initiale.
Scroller dans un pane
Activer le scroll:
(C-b] [
A partir de là on peut utiliser les touches de scroll (pageup/pagedown) pour remonter dans la sortie du pane.
Quitter le mode scroll:
q
Windows
Créer une nouvelle fenêtre
(C-b) n
Fenêtre précédente:
(C-b) p
Fenêtre suivante:
(C-b) n
Fenêtre <n°>:
(C-b) <n°>