Inicio > Entorno y utilidades > tmux

tmux: Guía del Multiplexor de Terminal

Un potente multiplexor de terminal que permite gestionar múltiples sesiones, ventanas y paneles en una única ventana de terminal, y separarse (detach) de una sesión para volver a conectarse (attach) más tarde.

¿Qué es tmux?

tmux, abreviatura de 'Terminal Multiplexer', permite dividir una pantalla de terminal en múltiples sesiones, ventanas (Window) y paneles (Pane) independientes. Es una herramienta esencial para mantener tareas en ejecución incluso si la conexión SSH se interrumpe, o para monitorear múltiples tareas simultáneamente.

3 conceptos clave

tmux tiene una estructura jerárquica de Sesión > Ventana > Panel.

  • Sesión (Session): La unidad más grande. Un espacio de trabajo que contiene múltiples ventanas. (Ej: 'proyecto-A') Las tareas continúan ejecutándose en segundo plano incluso si te separas (detach) de la sesión.
  • Ventana (Window): Similar a una pestaña dentro de una sesión. Una sesión puede tener múltiples ventanas.
  • Panel (Pane): Una pequeña pantalla de terminal que divide una ventana en varias partes. (Ej: editar código arriba, ver logs abajo)

Tecla Prefijo (Prefix Key)

Es la combinación de teclas que se presiona primero para ejecutar comandos dentro de `tmux`. El valor predeterminado es Ctrl+b. (Ej: para crear una nueva ventana, presiona Ctrl+b, suelta y luego presiona c). En esta guía, esta tecla se indicará como [Prefix].

Comandos principales (Shell)

Comandos que se ingresan directamente en la terminal (Shell) para gestionar las sesiones de tmux.

1. Gestión de Sesiones

2. Ayuda/Versión

Comando generado:

Combina los comandos.

Descripción:

`tmux` Ejecutando el comando.

Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.

Atajos de teclado principales (dentro de tmux)

Atajos de teclado utilizados cuando estás conectado a una sesión de `tmux`. Primero presiona [Prefix] (Ctrl+b por defecto) y luego la siguiente tecla.

Gestión de Sesiones y Ventanas

  • [Prefix] + d: Separarse de la sesión (Detach). Las tareas continúan ejecutándose en segundo plano.
  • [Prefix] + c: Crear nueva ventana (Create)
  • [Prefix] + w: Ver lista de ventanas (Windows)
  • [Prefix] + n: Ir a la siguiente ventana (Next)
  • [Prefix] + p: Ir a la ventana anterior (Previous)
  • [Prefix] + [0-9]: Ir directamente a la ventana con el número correspondiente
  • [Prefix] + ,: Cambiar el nombre de la ventana actual
  • [Prefix] + &: Cerrar la ventana actual (requiere confirmación)

Gestión de Paneles

  • [Prefix] + %: Dividir el panel actual verticalmente (izquierda/derecha)
  • [Prefix] + ": Dividir el panel actual horizontalmente (arriba/abajo)
  • [Prefix] + [teclas de dirección]: Mover el foco al panel en la dirección de la tecla de dirección
  • [Prefix] + o: Moverse cíclicamente al siguiente panel
  • [Prefix] + z: Maximizar/minimizar el panel actual (Zoom)
  • [Prefix] + x: Cerrar el panel actual (requiere confirmación)

Ejemplos de Escenarios de Uso (Shell)

Flujo común para iniciar y gestionar tmux desde la terminal.

Crear y adjuntar a la sesión my-project

tmux new -s my-project

Separarse de una sesión (Detach)

Dentro de una sesión, presiona [Prefix] (Ctrl+b) y luego la tecla d para salir de la sesión. La tarea continuará ejecutándose.

Verificar la lista de sesiones en ejecución

tmux ls

Volver a adjuntar a la sesión my-project

tmux attach -t my-project

Terminar la sesión my-project forzosamente

tmux kill-session -t my-project

Instalación

tmux se puede instalar fácilmente a través del gestor de paquetes de la mayoría de las distribuciones de Linux.

Debian/Ubuntu

sudo apt update && sudo apt install -y tmux

RHEL/CentOS/Fedora

sudo dnf install -y tmux

Arch Linux

sudo pacman -S --needed tmux

openSUSE

sudo zypper install -y tmux

Consejos y Advertencias

Configuraciones/Hábitos Recomendados

  • Inmediatamente después de conectarse por SSH: Al conectarse a un servidor remoto, crear una sesión como `tmux new -s work` permite continuar el trabajo de forma segura incluso si la conexión se interrumpe.
  • Modo ratón: Agregar `set -g mouse on` a ~/.tmux.conf permite ajustar el tamaño de los paneles, seleccionar ventanas y desplazarse con el ratón.
  • Archivo de configuración: Configura tus propios atajos de teclado o temas en ~/.tmux.conf.
  • Cambiar Prefijo: Si Ctrl+b es incómodo, puedes cambiarlo a `set -g prefix C-a`.

comandos relacionados

Son comandos que son funcionalmente similares o que se usan juntos con frecuencia.



Comandos de la misma categoría