tmux
es un multiplexor de código abierto, permite acceder de forma simultánea a múltiples sesiones de una terminal en una sola ventana. También permite desconectarse del proceso actual sin cerrar la sesión ni perder cambios (similar a lo que se hace con screen
). En este tutorial se cubrirá el uso y comandos básicos de tmux
.
Instalación
Fedora:
sudo dnf install tmux
Ubuntu:
sudo apt install tmux
Manjaro/Arch:
sudo pacman -Sy tmux
Uso de tmux
Inicio:
Una vez instalado, para iniciar una sesión utilizamos el comando tmux
:
Aparecerá una barra de estado en la zona inferior de la terminal:
Barra de estado:
Se pueden apreciar 3 zonas:
- Roja:
[0]
es el número de la sesión en la que estamos actualmente, incrementa a medida que creamos más sesiones y también se utiliza para volver a ingresar a una sesión abierta. - Celeste: Indica las ventanas de
tmux
que están abiertas (en morado), en este ejemplo hay 2 ventanas identificadas por0
y1
.*
indica cual ventana está «enfocada» en estos momentos, para el ejemplo es la ventana0
. - Naranja: Indica el hostname donde se está ejecutando
tmux
.
Comandos básicos:
Una vez dentro de una sesión de tmux
los comandos se deben preceder por la combinación de teclas Ctrl + b
. Para efectos de este tutorial, cuando se presente una combinación de la siguiente forma Ctrl + b - [key]
se refiere a que debemos presionar Ctrl + b
, soltar las teclas y luego presionar [key]
. En cambio una combinación [Ctrl] + b - [key]
se refiere a que debemos presionar Ctrl + b
, soltar b
y presionar [key]
sin soltar Ctrl
.
Administración de paneles
Dividir panel:
Ctrl + b - "
: Esto permite crear una división horizontal. En los teclados latino-americanos, se debe utilizarShift + 2
oMayús + 2
para escribir"
.
Ctrl + b - %
: Esto permite crear una división vertical. En los teclados latino-americanos, se debe utilizarShift + 5
oMayús + 5
para escribir%
.
Esto se puede hacer cuantas veces se quiera para una crear distribución de paneles adecuada a nuestra necesidad:
Cambiar de panel:
Como tmux
está pensado para trabajar solo con teclado, no podemos hacer click sobre un panel para seleccionarlo, debemos utilizar uno de los siguientes métodos:
Ctrl + b - [arrow key]
para cambiar al panel que se encuentre en la dirección correspondiente, es importante soltarCtrl + b
antes de presionar una de las arrow keys, sino estaremos utilizando un comando diferente.Ctrl + b - q
nos mostrará un número sobre cada panel, el cual podemos presionar para cambiar al panel correspondiente. En el ejemplo, el 2 de color rojo es el panel activo.
Redimensionar un panel:
Al dividir un panel, los subsiguientes van ocupando la mitad del espacio disponible, si queremos incrementar el tamaño de un panel se puede hacer con la combinación [Ctrl] + b - [arrow key]
, en este caso debemos mantener presionado Ctrl
para no utilizar el comando de cambiar de panel.
Desconectarse y re-ingresar a una sesión:
De forma similar a como se utiliza screen
para dejar ejecutando un comando/script/proceso mientras realizamos otras tareas (como dormir), tambien podemos hacerlo con tmux
.
Ctrl + b - d
nos permite desconectarnos de la sesión actual sin cerrarla. Cualquier cosa que se esté ejecutando en esa sesión seguirá como si estuvieramos conectados.tmux a -t [session]
se utiliza cuando estamos fuera detmux
para conectarnos a una sesión que ya fue iniciada.[session]
es el número correspondiente a la sesión que deseamos ingresar.
Esto cubre lo básico para comenzar a trabajar con tmux
, existen muchos más comandos y funciones avanzadas que permiten trabajar con tmux
de forma aún más eficiente pero que se escapan del ámbito de este tutorial.