Inicio > Entorno y utilidades > tmux

tmux: Multiplexor de Terminal

tmux es un multiplexor de terminal que permite gestionar sesiones de terminal y usar múltiples ventanas de terminal en una sola pantalla. Es especialmente útil para el trabajo remoto, ya que las sesiones se mantienen incluso si la conexión SSH se interrumpe, y ayuda a realizar múltiples tareas simultáneamente en una sola terminal.

Descripción General

tmux permite a los usuarios crear, separar (detach) y volver a conectar (attach) sesiones de terminal, asegurando que el trabajo no se interrumpa incluso si la conexión de red se cae. Además, permite gestionar múltiples ventanas (windows) y paneles divididos (panes) dentro de una sola ventana de terminal, mejorando significativamente la productividad.

Características Principales

  • Mantenimiento y reconexión de sesiones: Las sesiones de trabajo permanecen en el servidor incluso si la conexión de red se interrumpe.
  • Múltiples ventanas y paneles divididos: Permite el trabajo concurrente a través de múltiples ventanas virtuales y divisiones de pantalla dentro de una sola terminal.
  • Facilidad de colaboración: Múltiples usuarios pueden conectarse a la misma sesión de tmux para colaborar.
  • Personalizable: Permite modificar atajos de teclado, barra de estado y otras configuraciones a través del archivo `.tmux.conf`.

Opciones Principales

Opciones principales utilizadas con el comando tmux.

Gestión de Sesiones

Nombrar Sesiones/Ventanas

Comando generado:

Combina los comandos.

Descripción:

`tmux` Ejecutando el comando.

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

Ejemplos de Uso

Diversos ejemplos para gestionar sesiones de terminal con tmux.

Iniciar una Nueva Sesión de tmux

tmux

Si no se especifica un nombre, se asignará uno automáticamente.

Iniciar una Nueva Sesión con Nombre

tmux new -s my_session

Inicia una nueva sesión de tmux llamada `my_session`.

Conectarse a una Sesión Existente

tmux attach -t my_session

Vuelve a conectarse a la sesión llamada `my_session`.

Separar de la Sesión Actual

tmux detach

Equivalente a presionar `Ctrl+b d` dentro de una sesión de tmux. (No es un comando para ejecutar directamente en la terminal)

Ver Lista de Todas las Sesiones de tmux

tmux ls

Muestra todas las sesiones de tmux actualmente en ejecución y su estado.

Terminar una Sesión Específica

tmux kill-session -t my_session

Termina la sesión llamada `my_session`.

Instalación

tmux no suele venir preinstalado en la mayoría de las distribuciones de Linux, por lo que debe instalarse usando los siguientes comandos.

Debian/Ubuntu

sudo apt update && sudo apt install tmux

Instala tmux usando el gestor de paquetes APT.

CentOS/RHEL/Fedora

sudo dnf install tmux
# o sudo yum install tmux (versiones anteriores)

Instala tmux usando el gestor de paquetes YUM o DNF.

Arch Linux

sudo pacman -S tmux

Instala tmux usando el gestor de paquetes Pacman.

Consejos y Consideraciones

Consejos y consideraciones para usar tmux de manera más eficiente.

Tecla Prefijo Predeterminada (Prefix Key)

Todos los comandos de tmux se ejecutan presionando primero la tecla prefijo `Ctrl+b` y luego otra tecla. Esta tecla prefijo se puede cambiar en el archivo `.tmux.conf`.

  • Ctrl+b d: Separarse (detach) de la sesión actual
  • Ctrl+b %: Dividir el panel actual verticalmente
  • Ctrl+b ": Dividir el panel actual horizontalmente
  • Ctrl+b c: Crear una nueva ventana
  • Ctrl+b n: Ir a la siguiente ventana
  • Ctrl+b p: Ir a la ventana anterior
  • Ctrl+b x: Cerrar el panel actual (con mensaje de confirmación)
  • Ctrl+b [: Entrar en modo de desplazamiento (scroll) (desplazarse hacia arriba en la pantalla)
  • Ctrl+b ]: Salir del modo de desplazamiento (scroll)

Archivo `.tmux.conf`

Puede personalizar la configuración de tmux a través del archivo `.tmux.conf` en su directorio de inicio. Por ejemplo, puede cambiar la tecla prefijo a `Ctrl+a` o configurar el color y la información mostrada en la barra de estado. Para aplicar los cambios, ejecute el comando `tmux source-file ~/.tmux.conf` o reinicie la sesión de tmux.

Ejemplo Simple de .tmux.conf

# Cambiar la tecla prefijo a Ctrl+a
set -g prefix C-a
unbind C-b
bind C-a send-prefix

# Habilitar desplazamiento del ratón
set -g mouse on

Ejemplo para cambiar la tecla prefijo a `Ctrl+a` y habilitar el desplazamiento del ratón.


Comandos de la misma categoría