Tmux : le multiplexeur de terminal remplaçant de screen
Contents
1 Introduction
Tmux est pour des tas de bonnes raisons mieux que screen et permet donc de multiplexer des fenêtres de terminal. Ce qui est super pratique voir indispensable une fois qu'on y a goûter.
2 Installation
aptitude |
aptitude install tmux |
3 Utilisation
Pour utiliser tmux, il suffit de le lancer :
tmux |
tmux |
Tout comme screen, tmux doit utiliser une combinaison de touches pour utiliser ses fonctions internes. Par défaut c'est "Ctrl+b" (sachez que c'est modifiable) qui est utilisé.
Pour commencer, sachez que vous pouvez obtenir de l'aide très facilement (n'oubliez pas "Ctrl+b" avant de saisir une touche):
Description | Touches |
---|---|
Obtenir de l'aide | ? |
3.1 Gestion des fenêtres
Vous pouvez gérer vos fenêtres de la sorte (n'oubliez pas "Ctrl+b" avant de saisir une touche) :
Description | Touches |
---|---|
Créer une nouvelle fenêtre | c |
Obtenir la liste des fenêtres ouvertes | w |
Se déplacer sur la fenêtre suivante | n |
Se déplacer sur la fenêtre précédente | p |
Se déplacer sur l'avant dernière fenêtre utilisée | l |
Se déplacer sur une fenêtre en fonction de son numéro | 0 1 2 3 4 5 6 7 8 9 |
Faire une recherche dans les buffers des fenêtres | f puis "nom de recherche d'une fenêtre" |
Renommer la fenêtre en cours | , |
Forcer la fermeture d'une fenêtre | & |
Afficher l'heure | t |
3.2 Split
Vous pouvez splitter l'écran de plusieurs manières :
Description | Touches |
---|---|
Découper horizontalement l'écran | " |
Découper verticalement l'écran | % |
Se déplacer sur le volet précédent | { |
Se déplacer sur le volet suivant | } ou o |
Se déplacer sur le volet correspondant à la touche | ← → ↑ ↓ |
Obtenir les numéros des volets | q |
Changer l'organisation visuelle des volets | [espace] |
Agrandir une réduire un volet | Alt+(← → ↑ ↓) |
Convertir un volet d'un split en fenêtre | ! |
Convertir une fenêtre pour intégration dans un split * -h : horizontalement * -s 0.0 : fenêtre 0 et volet 0 * -p 75 : occupation à 75% de la fenêtre |
:joinp -h -s 0.0 -p 75 |
3.3 L’historique
Par défaut, Tmux ne garde que 2000 lignes d'historique. Voici comment naviguer :
Description | Touches |
---|---|
Remonter dans l'historique | ↑↑ (PageUP) |
Descendre dans l'historique après être remonté | ↓↓ (PageDOWN) |
Sélectionner des lignes de l'historique (après PageUP) | [espace] puis (↑/↓) |
Copier la sélection | [entrée] |
Coller la sélection | = |
3.4 Sessions
La gestion des sessions est quelque chose de très très pratique. En effet, il est toujours bien pratique de pouvoir quitter une session SSH et de laisser tourner des tâches qui prennent du temps ou encore être à l’abri d'une déconnexion réseaux. C'est pourquoi lorsque vous êtes dans tmux, il est possible de se détacher de son tmux :
Description | Touches |
---|---|
Détachement de session tmux | d |
Lister les sessions tmux | s |
Basculer à la session tmux suivante | ) |
Basculer à la session tmux précédente | ( |
Puis de s'y rattacher plus tard :
tmux |
tmux a |
Cette commande permet également à plusieurs participants de voir exactement la même chose.
4 Cheat Sheet
J'ai créer une Cheat Sheet pour ceux que ça intéresse :
5 Personnalisation
Il est possible de personnaliser tout un tas de choses (je vous laisse lire le man tellement c'est complet), et en voici ma configuration :
Vous pouvez également trouver la dernière version que j'utilise sur mon git.
6 Lancer un programme avec tmux au boot
Vous avez peut être envie de lancer un weechat (client IRC) ou autre dans un tmux au lancement de votre machine. Pour faire celà, c'est facile :
su |
su - deimos -c "tmux new-session -d 'weechat-curses'" |
Donc là on demande à tmux de créer une nouvelle session via l'utilisateur deimos.
7 Ressources
http://tmux.sourceforge.net/
http://myhumblecorner.wordpress.com/2011/08/30/screen-to-tmux-a-humble-quick-start-guide/
http://blog.hawkhost.com/2010/06/28/tmux-the-terminal-multiplexer/
http://blog.hawkhost.com/2010/07/02/tmux-%E2%80%93-the-terminal-multiplexer-part-2/
http://www.dayid.org/os/notes/tm.html
http://tmux.svn.sourceforge.net/viewvc/tmux/trunk/examples/
http://linux-attitude.fr/post/configuration-de-tmux?utm_source=rss&utm_medium=rss&utm_campaign=configuration-de-tmux