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
En caso de estar utilizando los computadores del laboratorio mediante ssh, no es necesario realizar ningún comando de instalación
Uso de tmux
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:
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.