¿Alguna vez has deseado realizar varias tareas simultáneamente en una terminal o trabajar con varios servidores diferentes? Tmux es la solución que necesitas. Este programa te permite dividir una terminal en varias secciones, teniendo una shell en cada una para hacer lo que desees. En este artículo, aprenderás cómo instalar y utilizar Tmux en MacOS. Si buscas paquetes VPS económicos, el sitio web de Eldernode ofrece opciones ideales.
¿Qué es Tmux?
Tmux es un multiplexor de terminal de código abierto que reemplaza al GNU screen. Permite acceder a múltiples sesiones de terminal simultáneamente en una sola ventana, ejecutando varios programas de línea de comandos al mismo tiempo y alternando fácilmente entre ellos. Protege tus programas de desconexiones accidentales al desacoplarlos de la terminal principal y es scriptable, lo que te permite crear sesiones personalizadas para diferentes propósitos.
Instalación
Ya tengo brew instalado en el sistema (mostrado recientemente) así que voy a hacer uso de su magia.
brew install tmux
Cómo Utilizar Tmux en MacOS
1- Para iniciar Tmux, ejecuta el siguiente comando:
tmux
2- Crea una nueva sesión con:
tmux new-session -s <nombre_de_tu_sesión>
3- Visualiza las sesiones disponibles con:
tmux list-sessions
4- Para desconectar de tu sesión cuando hayas terminado, usa:
tmux detach
5- Y para volver a unirte a tu sesión de Tmux cuando estés listo para continuar trabajando:
tmux attach -t <nombre_de_tu_sesión>
6- Aquí hay algunos atajos comunes para utilizar Tmux:
- Ctrl-b + ?: Mostrar todos los comandos
- Ctrl-b + c: Crear una nueva ventana
- Ctrl-b + o: Cambiar
- Ctrl-b + flecha: Cambiar de panel
- Ctrl-b + «: Dividir horizontalmente
- Ctrl-b + %: Dividir verticalmente
- Ctrl-b + n: Siguiente
- Ctrl-b + p: Anterior
Habilitar el scroll del mouse en tmux para MacOS
Una de las opciones más importantes después de instalarlo es poder hacer scroll en el historial de la terminal con el mouse, por lo eso vamos a crear el archivo ~/.tmux.conf
nano ~/.tmux.conf
Y agregamos
# mouse support
set -g mouse on
Combinaciones de teclas indispensables para manejar Tmux como un campeón.
[Cntrl + b] + % Divide la terminal verticalmente. [Cntrl + b] + " Divide la terminal horizontalmente. [Cntrl + b] + Tecla cursor Permite desplazar el foco entre terminales. [Cntrl + b] + [Cntrl + Tecla cursor] Permite redimensionar las terminales con los cursores. [Cntrl + b] + x Cierra la terminal donde está el foco activo. [Cntrl + b] + ! Cierra todas las terminales menos la que tiene el foco activo. [Cntrl + b] + d Se desvincula de una sesión y le asigna un número si no tiene nombre. [Cntrl + b] + z Pone en primer plano la terminal en la que tengamos el foco. (Útil a la hora de seleccionar texto). [Cntrl + b] :setw synchronize-panes Todas las terminales reciben la misma entrada de teclado, permite usar varias terminales a la vez. # Copiar / Pegar con tmux. 0 - [Cntrl + b] + "PgUp" o "[" Permite entrar el modo copia y usar el scrolling (q para salir). 1 - Ir a la linea a partir de la cual se quier copiar. 2 - [Cntrl + Barra espaciadora] 3 - Mover con los cursores para seleccionar lo que se quiere copiar. 4 - [Alt + w] Copia el texto seleccionado en el paso anterior. 5 - [Cntrl + b] + "]" Pega el contenido copiado. # Crear pestañas (ventanas según tmux) que pueden contener a su vez las terminales que se deseen. [Cntrl + b] + c Crea una pestaña. [Cntrl + b] + w Lista las pestañas. [Cntrl + b] + n Se dirige a la siguiente pestaña. [Cntrl + b] + p Se dirige a la pestaña anterior. [Cntrl + b] + f Busca pestañas. [Cntrl + b] + , Establece un nombre a la pestaña. [Cntrl + b] + & Finaliza la pestaña. tmux new -s XX Crea una sesión llamada XX. [Ctrl + b] + $ Permite renombrar una sesión. tmux ls Lista las sesiones. tmux a -t 4 Se vincula a la sesión 4. Si lo hacen dos usuarios o más, todos podrán colaborar en la misma terminal. Al compartir una consola, siempre se visualizará con las dimensiones que correspondan el cliente que utilice las menores medidas de ancho y alto. [Cntrl + b] + t Muestra un reloj digital. [Cntrl + b] + q Muestra el número de terminal. [Cntrl + b] + Barra espaciadora Cambia el esquema de posicionado de terminales. # Termina todas las sesiones abiertas en tmux. tmux ls | cut -d: -f1 | xargs -l1 tmux kill-session -t
Conclusión
Tmux es un multiplexor de terminal que te permite ejecutar procesos o comandos por separado y previsualizar la salida al mismo tiempo. También puedes crear múltiples ventanas y paneles dentro de la misma terminal. En este artículo, te hemos presentado Tmux y te hemos enseñado cómo instalarlo y utilizarlo en MacOS. Esperamos que este tutorial te ayude a instalar Tmux en tu sistema operativo Mac. Si encuentras algún problema o tienes preguntas, no dudes en contactarnos en la sección de comentarios.