Usando tmux: apuntes breves de mi jornada

Breves notas sobre el uso de tmux. Adecuado para mirar de manera rápida alguna instrucción que necesitemos para continuar con nuestro flujo de trabajo.

tmux
Linux
Author
Published

January 3, 2021

¿Qué es tmux?

Es un sistema de multiplexación para sistemas Unix. Lo que nos permite es realizar múltiples tareas en una terminal a través del uso de paneles, sesiones o ventanas.

En otras palabras, es abrir una terminal y poder abrir y usar otras terminales dentro de esta.

Instalando tmux

Para instalarlo en distribuciones basadas en debian, podemos hacerlo con el comando:

sudo apt install tmux

Para validar que se instaló

# Si nos da un número de version, estamos listos.
tmux -V

Primeros pasos con tmux

Para iniciar la sesión con tmux, corremos en la terminal el comando con el mismo nombre:

tmux

Veremos en la parte inferior de la terminal que tenemos información como

[0] 0:bash*    "ronny" 22:35 03-ene-21

Con esto podemos asegurar que estamos usando tmux sin problema.

Para hacer uso de las funciones que trae tmux, necesitamos tener en cuenta que hay un prefijo configurado por defecto que hay que utilizar para la mayoría de las operaciones: ctrl + b

Esto se puede configurar para no dejarlo en una combinación de teclas tan incómoda, pero lo haremos luego.

Paneles en tmux

  • En la terminal podemos dividir la vista en varios paneles.
  • Se pueden dividir paneles en otros más.
  • Cada panel puede ejecutar distintas tareas.

Dividir paneles horizontal

ctrl + b + "

Dividir paneles vertical

ctrl + b + %

Cerrar un panel

# Primera opción
ctrl + b + x

# Segunda opción:
exit

Moverse entre paneles

ctrl + b + ← ↑ → ↓ 

Zoom en un panel

  • Sobre el panel que queremos enfocarnos usamos el comando.
  • Los demás paneles no desaparecen, quedan ocultos por el panel en zoom.
  • Con el mismo comando quitamos el enfoque en el panel
# Para hacer el enfoque en un panel
ctrl + b + z

# Para quitar el enfoque, en el panel escribimos el mismo comando
ctrl + b + z

Ventanas en tmux

  • A diferencia de los paneles, las ventanas nos dan una pantalla completa.
  • Podemos generar varias ventanas y en cada ventana crear paneles.
  • En parte inferior de la terminal, tendremos info sobre la o las ventanas.

Crear ventana

# c = create
ctrl + b + c

Moverse a ventana anterior

# p = previous
ctrl + b + p

Moverse a ventana siguiente

# n = next 
ctrl + b + n

Moverse a ventana por id numérico

ctrl + b + numero_ventana

Cerrar una ventana

ctrl + b + &

Renombrar ventana

# Para abrir opción de renombrar
ctrl + b + ,

Sesiones en tmux

  • Cada vez que usamos el comando tmux abrimos una sesión.
  • Si se cierra la terminal, podemos regresar a la sesión.
  • Las sesiones pueden correr como proceso “oculto”

Desconectarse de una sesión

ctrl + b + d

Revisar sesiones de tmux abierta con bash

ps aux | grep tmux

Revisar sesiones tmux con funcionalidad propia

# Comando completo
tmux list-sessions

# Comando corto
tmux ls

Conectarnos a una sesión en específico

# Por ejemplo a sesión 1
tmux attach -t 1

Cambiar nombres a sesiones

# Dentro de la sesión
ctrl + b + $

Crear una nueva sesión con nombre

tmux new -s "mi_proyecto"

Hojas de referencia

Existen hojas de referencias para tmux. Una es esta

Reuse

Citation

BibTeX citation:
@online{a. hernandez mora2021,
  author = {A. Hernandez Mora, Ronny},
  title = {Usando Tmux: Apuntes Breves de Mi Jornada},
  date = {2021-01-03},
  url = {https://profound-caramel-d8abb6.netlify.app/posts/2021-12-11-usando-tmux},
  langid = {en}
}
For attribution, please cite this work as:
A. Hernandez Mora, Ronny. 2021. “Usando Tmux: Apuntes Breves de Mi Jornada.” January 3, 2021. https://profound-caramel-d8abb6.netlify.app/posts/2021-12-11-usando-tmux.