GNU/Linux >> Tutoriels Linux >  >> Linux

Utilisez cette feuille de triche pour tmux en tant que multiplexeur de terminal

Que vous démarriez un homelab Raspberry Pi élaboré ou que vous gériez un bâtiment rempli de postes de travail, vous devez parfois effectuer la même tâche sur plusieurs hôtes. Il existe de nombreuses façons d'automatiser les tâches entre les systèmes. Ansible, par exemple, garantit que tous les systèmes sont dans le même état, et parfois une simple tâche cron suffit. Mais parfois, vous devez exécuter des commandes manuellement. Pour cela, vous avez besoin de tmux, un terminal unique qui vous donne le contrôle de plusieurs invites de commande.

tmux est une application open source qui ajoute des couches (ou "fenêtres", dans la terminologie tmux) à votre fenêtre de terminal afin que vous puissiez ouvrir plusieurs terminaux dans une seule fenêtre de bureau. Le résultat est une interface à onglets (sans les onglets physiques), de sorte que vous pouvez passer d'un terminal ouvert à un autre sans avoir à utiliser la souris comme vous le faites lorsque vous passez d'un onglet dans Firefox à un autre.

Cela peut sembler redondant. Après tout, les applications de terminal modernes, telles que GNOME Terminal et Konsole, ont des onglets intégrés par défaut, et même certains terminaux très anciens, tels que rxvt, ont la possibilité d'ajouter une interface à onglets. Cependant, tmux ajoute la possibilité de diviser une fenêtre en volets, chaque volet contenant un terminal distinct, et chaque terminal peut être connecté à un hôte distinct. Vous pouvez créer un tableau de terminaux avec seulement quelques raccourcis clavier ou un script tmuxinator rudimentaire.

(Seth Kenlon, CC BY-SA 4.0)

Installer tmux

Sous Linux et BSD, vous pouvez installer tmux à partir de votre référentiel de logiciels ou de votre arborescence de ports. Sur Mac, utilisez Homebrew.

Par exemple, sur RHEL ou Fedora :

$ sudo dnf install tmux

Démarrer tmux

Pour démarrer tmux, ouvrez un terminal et tapez :

$ tmux

Lorsque vous faites cela, le résultat évident est que tmux lance un nouveau shell dans la même fenêtre avec une barre d'état en bas. Il se passe plus, cependant, et vous pouvez le voir avec cette petite expérience. Tout d'abord, faites quelque chose dans votre terminal actuel pour vous aider à le distinguer d'un autre terminal vide :

$ echo hello
hello

Appuyez maintenant sur Ctrl+B suivi de C sur votre clavier. Il peut sembler que votre travail a disparu, mais en réalité, vous avez créé ce que tmux appelle une fenêtre (ce qui peut être, certes, déroutant car vous appelez probablement aussi le terminal que vous avez lancé une fenêtre ). Grâce à tmux, vous avez en fait deux fenêtres ouvertes, toutes deux répertoriées dans la barre d'état en bas de tmux. Vous pouvez naviguer entre ces deux fenêtres par numéro d'index. Par exemple, appuyez sur Ctrl+B suivi de 0 pour aller à la fenêtre initiale :

$ echo hello
hello

Appuyez sur Ctrl+B suivi de 1 pour accéder à la première nouvelle fenêtre que vous avez créée.

Vous pouvez également "parcourir" vos fenêtres ouvertes en utilisant Ctrl+B et N (pour Suivant) ou P (pour Précédent).

Le déclencheur et les commandes tmux

Plus de ressources Linux

  • Aide-mémoire des commandes Linux
  • Aide-mémoire des commandes Linux avancées
  • Cours en ligne gratuit :Présentation technique de RHEL
  • Aide-mémoire sur le réseau Linux
  • Aide-mémoire SELinux
  • Aide-mémoire sur les commandes courantes de Linux
  • Que sont les conteneurs Linux ?
  • Nos derniers articles Linux

Le raccourci clavier Ctrl+B est le déclencheur tmux. Lorsque vous appuyez dessus dans une session tmux, il alerte tmux pour "écouter" la prochaine touche ou combinaison de touches qui suit. Tous les raccourcis tmux sont donc préfixés par Ctrl+B .

Vous pouvez également accéder à une ligne de commande tmux et saisir les commandes tmux par leur nom. Par exemple, pour créer une nouvelle fenêtre à la dure, vous pouvez appuyer sur Ctrl+B suivi de  : pour entrer la ligne de commande tmux. Tapez new-window et appuyez sur Entrée pour créer une nouvelle fenêtre. Cela fait exactement la même chose que d'appuyer sur Ctrl+B puis C .

Diviser les fenêtres en volets

Une fois que vous avez créé plusieurs fenêtres dans tmux, il est souvent utile de les voir toutes dans une seule fenêtre. Vous pouvez diviser une fenêtre horizontalement (ce qui signifie que la division est horizontale, en plaçant une fenêtre dans une position Nord et une autre dans une position Sud) ou verticalement (avec des fenêtres situées dans des positions Ouest et Est).

  • Pour créer une séparation horizontale, appuyez sur Ctrl+B suivi de " (c'est un guillemet double).
  • Pour créer une division verticale, appuyez sur Ctrl+B suivi de % (pourcentage).

Vous pouvez diviser les fenêtres qui ont été divisées, de sorte que la mise en page dépend de vous et du nombre de lignes dans votre terminal.

Parfois, les choses peuvent devenir incontrôlables. Vous pouvez ajuster un terminal rempli de volets divisés au hasard à l'aide de ces préréglages rapides :

  • Ctrl+B Alt+1  :Divisions horizontales régulières
  • Ctrl+B Alt+2  :Divisions verticales régulières
  • Ctrl+B Alt+3  :Portée horizontale pour le volet principal, fractionnements verticaux pour les volets inférieurs
  • Ctrl+B Alt+3  :Portée verticale pour le volet principal, fractionnements horizontaux pour les volets inférieurs
  • Ctrl+B Alt+5  :Mise en page en mosaïque

Basculer entre les volets

Pour passer d'un volet à un autre, appuyez sur Ctrl+B suivi de O (comme dans autre ). La bordure autour du volet change de couleur en fonction de votre position et le curseur de votre terminal passe à son état actif. Cette méthode "parcourt" les volets dans l'ordre de création.

Vous pouvez également utiliser les touches fléchées pour accéder à un volet en fonction de votre mise en page. Par exemple, si vous avez deux volets ouverts divisés par une division horizontale, vous pouvez appuyer sur Ctrl+B suivi du Haut flèche pour passer du volet inférieur au volet supérieur. De même, Ctrl+B suivi du Bas la flèche passe du volet supérieur au volet inférieur.

Exécuter une commande sur plusieurs hôtes avec tmux

Maintenant que vous savez comment ouvrir de nombreuses fenêtres et les diviser en volets pratiques, vous savez presque tout ce que vous devez savoir pour exécuter une commande sur plusieurs hôtes à la fois. En supposant que vous ayez une mise en page qui vous convient et que chaque volet soit connecté à un hôte distinct, vous pouvez synchroniser les volets de sorte que l'entrée que vous tapez sur votre clavier soit reflétée dans tous les volets.

Pour synchroniser les volets, accédez à la ligne de commande tmux avec Ctrl+B suivi de  : , puis saisissez setw synchronize-panes .

Maintenant, tout ce que vous tapez sur votre clavier apparaît dans chaque volet, et chaque volet répond en conséquence.

Téléchargez notre aide-mémoire

Il est relativement facile de retenir Ctrl+B pour invoquer les fonctionnalités de tmux, mais les clés qui suivent peuvent être difficiles à retenir au début. Tous les raccourcis clavier tmux intégrés sont disponibles en appuyant sur Ctrl+B suivi de ? (quittez l'écran d'aide avec Q ). Cependant, l'écran d'aide peut être un peu écrasant pour toutes ses options, dont aucune n'est organisée par tâche ou sujet. Pour vous aider à vous souvenir des fonctionnalités de base de tmux, ainsi que de nombreuses fonctions avancées non couvertes dans cet article, nous avons développé une feuille de triche tmux. Le téléchargement est gratuit, alors procurez-vous votre copie dès aujourd'hui.

Téléchargez notre aide-mémoire tmux dès aujourd'hui !


Linux
  1. Conseils Linux pour l'utilisation de GNU Screen

  2. Aide-mémoire pour les utilisateurs Linux et les autorisations

  3. Aide-mémoire pour les commandes Linux courantes

  4. Aide-mémoire pratique d'un administrateur système pour SELinux

  5. Comment utiliser Tmux + Cheat Sheet

Comment utiliser Instagram dans le terminal

Comment installer et utiliser Tmux (multiplexeur de terminaux) sous Linux

Aide-mémoire des commandes de base de données MySQL pour Linux

Feuille de triche des commandes Pacman pour Arch Linux

Comment installer le multiplexeur de terminaux Tmux sur Linux

Comment installer et utiliser Tmux (multiplexeur de terminaux) dans le système Linux