Primeros pasos con Tmux [Beginner’s Guide]

Estafatmuxpuede crear múltiples sesiones de terminal que se pueden abrir (adjuntar) y cerrar (separar) o mostrar simultáneamente todo desde una ventana.

Múltiples paneles usando tmux

Aprender a usar un multiplexor de terminal te ahorrará muchos dolores de cabeza si pasas mucho tiempo en la terminal. Esto es especialmente cierto si su trabajo implica acceder a máquinas remotas solo a través de la línea de comandos.

Pantalla vs tmux

Se considera que Tmux es el siguiente paso evolutivo desde el multiplexor de pantalla GNU.

Si está acostumbrado al comando de pantalla, le resultará fácil comenzar de inmediato. Hay muchas similitudes entre las dos aplicaciones. Tuvimos una gran respuesta a nuestro artículo de comandos de pantalla, y siento que nuestros lectores realmente disfrutarán usando algunas de las funciones actualizadas de tmux.

Si ya se siente cómodo con el comando de pantalla, puede escanear rápidamente este artículo para ver las diferencias. Para algunos comandos, puedo señalar similitudes o diferencias. Aparte de estas notas, este artículo no presumirá ningún conocimiento previo.

Si estás un poco perdido y aún no sabes de qué se trata este artículo, no hay problema. Vamos a revisar todo juntos. Le mostraré cómo instalar tmux y cómo realizar operaciones básicas.

Instalar tmux

Tmux es una aplicación popular y debería estar disponible en el repositorio oficial de su distribución de Linux. Puede instalarlo usando el administrador de paquetes de su distribución.

En las distribuciones basadas en Debian y Ubuntu, puede instalarlo usando el siguiente comando:

sudo apt install tmux

Primeros pasos con tmux

Como mencionamos, tmux es una gran aplicación para hacerlo más productivo. Es una poderosa pieza de software, pero puede ser un poco confuso para comenzar.

Lo guiaré a través de las características críticas de una en una. Mi objetivo es facilitarle la entrada y mostrarle la funcionalidad básica. Hay tantas formas de personalizar tmux, que no podremos cubrir todo en este artículo. Si tiene curiosidad acerca de un artículo sobre características y funcionalidades avanzadas, ¡háganoslo saber en la sección de comentarios!

Crear una sesión en tmux

Abra una terminal y use el siguiente comando:

[email protected]:~$ tmux

Esto debería llevarlo a tmux. Verá un símbolo del sistema como de costumbre, pero ahora verá un menú de estilo de barra de tareas en la parte inferior de la terminal que dirá algo como bash 0 *.El asterisco indica que esta es su ventana activa.

Vamos a crear un par de ventanas entre las que puede alternar. Puedes hacer esto usando el prefijo[ctrl+b]+c.

Debería ver en la barra de tareas algo llamado1: golpeha sido añadido. Agreguemos dos más antes de continuar.

Ahora debería verse como la captura de pantalla a continuación. Debería tener un total de cuatro nuevas ventanas de terminal (solo verá una ventana a la vez).

Tmux sesión 0 con 4 ventanas

El nombre de la ventana automática

Tmux puede identificar ciertos programas y cambiar el nombre de sus ventanas automáticamente (si no ha nombrado su ventana explícitamente). Para examplesi ejecuta el comando superior en una ventana, notará que el nombre de la ventana cambia de bash hasta arriba.

Sesión vs Ventana vs Panel (dividido) en tmux

Antes de continuar, debe conocer la diferencia entre sesión, ventana y panel en tmux.

Considere las sesiones como cuadernos, las ventanas como capítulos y los paneles de las ventanas como sus páginas.

Una sesión puede tener varias ventanas. Una ventana es básicamente una terminal. Puede dividir una ventana entre varios paneles verticales y horizontales. Esto significa que una ventana de terminal puede tener múltiples terminales.

Puede crear una sesión tmux para un tema/proyecto específico. Para example, si administra tres servidores, tal vez pueda crear una sesión para que cada servidor realice tareas. Utilice una ventana para monitorear los recursos del sistema y otra para realizar algunas tareas de mantenimiento. La ventana de monitoreo del sistema puede tener varios paneles para monitorear el uso de la memoria, la CPU y el disco.

Ventana y panel de sesión de TmuxTmux: Sesión vs Ventana vs Panel

Cambiar entre ventanas en una sesión tmux

Recuerda que ctrl+b (simultáneamente) es como tu tecla “tmux”. Le dice al software que desea ingresar un comando. Mire la tabla a continuación para comenzar a navegar por la interfaz tmux.

Anterior próximo norte (0, 1, 2, 3, etc.)
[ctrl + b] + página [ctrl + b] + norte Cambiar a n Ventana: [ctrl + b] + 0

Ahora puede moverse “hacia adelante y hacia atrás” o seleccionar una instancia específica por su número de identificación. Pruebe esas cosas hasta que se sienta cómodo.

¿Listo? Impresionante. Veamos algunas de las otras funcionalidades.

NOTA: Si es un usuario experimentado de Screen, es posible que esté acostumbrado a usar [ctrl + a] prefijo. La edición del archivo de configuración le permitirá cambiar el prefijo si lo desea. De hecho, descubrí que la combinación de teclas alternativas mejoró mi eficiencia, pero también entiendo que los viejos hábitos son difíciles de romper.

Cambiar usando la lista de ventanas

Otra opción utiliza [ctrl+b] + w. Esto le da una visión general de las sesiones. Puede usar las teclas de flecha para seleccionar las ventanas/paneles deseados.

Prefijo Tmux W

Nombrar o cambiar el nombre de las ventanas en tmux

Puede nombrar su ventana actual con la siguiente combinación de teclas:

[ctrl+b] + ,

Asigne un nombre a su sesión tmux

Puede que le resulte útil nombrar sus sesiones con títulos significativos para mantener las cosas organizadas. Intentemos nombrar su primera sesión con tmux.

Puede nombrarlo como queramos, pero en este caso lo nombraré gratis. Enter el siguiente comando:

tmux new -s free

Ahora debería tener una nueva sesión de tmux ejecutándose. Si mira en el área inferior izquierda de la ventana, verá el nombre de su sesión en lugar del genérico ‘bash’.

Si ya creó una sesión, puede nombrarla o renombrarla usando la siguiente combinación de teclas:

[ctrl+b] + $

Separe una sesión (salga de la sesión tmux pero manténgala ejecutándose en segundo plano)

Antes de continuar, comencemos a ejecutar libremente con el comando de reloj que actualizará los resultados cada 2 segundos.

watch free

Si no está familiarizado con free o watch, le recomiendo que consulte el comando watch and free. Sin embargo, el conocimiento de su funcionalidad no es esencial para usarlos con tmux.

Bien, una vez que comience el programa, continúe y separe la sesión. Utilice esta combinación de teclas:

[ctrl + b] + d

Esto debería devolverlo a un símbolo del sistema estándar. Ten en cuenta que la sesión de tmux sigue ejecutándose en segundo plano y puedes volver a entrar cuando quieras.

Lista de sesiones tmux

¿Qué pasó con tu sesión? Todavía se está ejecutando en segundo plano. Puede volver a abrir la sesión por nombre o por número de identificación, pero ¿qué sucede si olvida el nombre de la sesión?

Hay una función de lista integrada en tmux:

tmux ls

Esto mostrará una lista de todas sus sesiones tmux actuales. Ejecutarlo producirá una salida como esta:

[email protected]:~$ tmux ls
free: 1 windows (created Sat Feb 29 03:16:31 2020) [80x23]

Como puede ver, también enumera cuántas ventanas tiene una sesión.

Vuelva a ingresar a una sesión en Tmux (también conocido como adjuntar)

Para reabrir su sesión de tmux, puede usar el comando tmux con la opción de adjuntar o adjuntar sesión como esta:

tmux attach -t session_name_or_number

Aquí hay una animación que muestra todos estos pasos hasta este punto de la demostración.

Creando múltiples paneles en tmux

Ahora que comprende los conceptos básicos, puede ir más allá y crear varios paneles.

Horizontales (Izquierda/Derecha) Vertical (Arriba/Abajo)
[ctrl + b] +% [ctrl+b]+”

Practiquemos un poco con estos comandos creando una división vertical seguida de una división horizontal.

[ctrl + b] + " 
[ctrl + b] +  %

Si ingresó los comandos en ese orden, debería tener tres paneles con este aspecto:

División TmuxDivisión Tmux

Puedes usar [ctrl+b] + tecla de espacio para alternar el diseño del panel actualmente enfocado.

Cambiar entre paneles

Para cambiar entre las divisiones, puede usar el prefijo tmux [ctrl+b] + teclas de flecha.

[ctrl+b] + arrow keys

Este ciclo los paneles en la dirección que elija. El panel seleccionado se resaltará en verde.

Ampliar un panel

También puede hacer “zoom” en un panel seleccionado con el [ctrl+b] + z. Esto traerá la pantalla seleccionada a tamaño completo. Para salir del modo zoom, presione [ctrl+b] + z otra vez.

Matar o cerrar paneles

Esto es muy importante. Puedes close un panel (se divide) usando el prefijo [ctrl + b] + X.

Te pedirá la confirmación:

kill-pane 0? (y/n)

Matar o cerrar ventanas en tmux

Con el fin de close la ventana actual (pestañas), use:

[ctrl + b] + &

Le pedirá su confirmación:

kill-window window_name? (y/n)

Matar sesiones en tmux

Para eliminar la sesión tmux actual que está utilizando, primero deberá eliminar todas las ventanas. Eso no es muy conveniente, ¿verdad?

Puede matar selectivamente una sesión tmux usando su nombre o número como este:

tmux kill-session -t session_name_or_number

Matará la sesión incluso si está dentro de la sesión.

Si desea eliminar toda la sesión excepto la que está usando actualmente (o la última que usó), use este comando:

tmux kill-session -a

Para eliminar todas las sesiones de tmux de una sola vez, puede usar este comando mágico:

tmux kill-server

Descargar hoja de trucos de tmux

Aprendiste los conceptos básicos de tmux pero recordar todos los comandos no es fácil, especialmente al principio. Es por eso que estoy resumiendo todos los comandos en la tabla a continuación. También puede descargarlo en formato PDF.

Dominio Explicación
tmux Iniciar nueva sesión
tmux nuevo -s nombre Iniciar nueva sesión con nombre
tmux ls Listar todas las sesiones
tmux matar-sesión -t nombre Matar la sesión mencionada
tmux matar-sesión -a Matar todas las sesiones excepto la última sesión utilizada
tmux matar-servidor Matar todas las sesiones de tmux
tmux adjunto -t nombre Adjuntar/ingresar a la sesión mencionada
[Ctrl +b] + volver Separar/salir de la sesión actual
[Ctrl +b] +$ Nombrar o cambiar el nombre de la sesión actual
[Ctrl +b] +c Crear nueva ventana
[Ctrl +b] + , Nombrar o cambiar el nombre de la ventana actual
[Ctrl +b] + w Listar todas las ventanas
[Ctrl +b] + & Matar la ventana actual
[Ctrl +b] + n/p/N Mover a la ventana siguiente/anterior/N-ésima
[Ctrl +b] +% Crear panel horizontal
[Ctrl +b] + “ Crear panel vertical
[Ctrl +b] + tecla de espacio Alternar el diseño del panel actual
[Ctrl +b] +z Zoom en el panel actual
[Ctrl +b] + x Matar el panel actual

Trucos de Tmux Atajos de teclado para usar tmux tmux-cheatsheet.png 475 KB

descarga-círculo

Conclusión

Gracias por seguir nuestra introducción a tmux. Como puedes ver hay una gran variedad de aplicaciones. Espero que esta descripción general básica le haya dado algunas ideas sobre cómo puede usar tmux para mejorar su flujo de trabajo.

Como siempre, si tiene alguna pregunta, déjela a continuación en la sección de comentarios.

Actualizaciones del boletín

Ingrese su dirección de correo electrónico a continuación para suscribirse a nuestro boletín