Sesiones
| Tarea | Comando o tecla |
|---|---|
Conectarte a work, o crearla | tmux new -A -s work |
| Nueva sesión en segundo plano | tmux new -d -s work |
| Listar las sesiones | tmux ls |
| Conectarte a una sesión | tmux attach -t work |
| Desconectarte y dejarla en marcha | Ctrl+b d |
| Renombrar la sesión | Ctrl+b $ |
| Elegir una sesión de una lista | Ctrl+b s |
| Terminar una sesión | tmux kill-session -t work |
| Terminar todas las sesiones | tmux kill-server |
| Comprobar si existe una sesión, para scripts | tmux has-session -t work |
Ventanas
| Tarea | Tecla |
|---|---|
| Nueva ventana | Ctrl+b c |
| Siguiente, anterior | Ctrl+b n, Ctrl+b p |
| Ir a la ventana 0 | Ctrl+b 0 |
| Última ventana usada | Ctrl+b l |
| Renombrar | Ctrl+b , |
| Elegir de un árbol con todas las ventanas | Ctrl+b w, y q para salir |
Cerrar, tras confirmar con y | Ctrl+b & |
Paneles
| Tarea | Tecla o comando |
|---|---|
| Dividir en columnas, lado a lado | Ctrl+b % |
| Dividir en filas, arriba y abajo | Ctrl+b " |
| Moverte entre paneles | Ctrl+b y una tecla de flecha |
| Panel siguiente | Ctrl+b o |
| Ampliar y reducir | Ctrl+b z |
| Mostrar los números de los paneles | Ctrl+b q |
| Convertir un panel en su propia ventana | Ctrl+b ! |
Cerrar, tras confirmar con y | Ctrl+b x |
| Redimensionar 5 celdas hacia la izquierda | tmux resize-pane -L 5 |
| Intercambiar con el panel siguiente | tmux swap-pane -D |
| Columnas iguales | tmux select-layout even-horizontal |
Desplazarse y copiar
| Tarea | Tecla o comando |
|---|---|
| Entrar en el modo copia para desplazarte | Ctrl+b [ |
| Salir del modo copia | q |
| Guardar las últimas 3000 líneas en un archivo | tmux capture-pane -p -S -3000 > out.txt |
Otras teclas útiles
| Tarea | Tecla |
|---|---|
| Listar todos los atajos | Ctrl+b ? |
| Escribir un comando de tmux | Ctrl+b : |
| Mostrar un reloj | Ctrl+b t |
Manejarlo desde fuera con scripts
Detrás de cada tecla hay un comando, así que puedes controlar tmux desde un script o por SSH:
tmux new -d -s work
tmux new-window -t work -n logs
tmux split-window -h -t work
tmux send-keys -t work 'echo hello' Enter
tmux capture-pane -p -t work
tmux kill-window -t work:logs
Desde tu propia máquina, ssh -t user@server tmux new -A -s work entra directamente en una sesión. La opción -t es necesaria porque tmux quiere un terminal.
Configuración
Los ajustes van en ~/.tmux.conf. Estos dos son habituales:
set -g mouse on
set -g history-limit 50000
Carga el archivo sin reiniciar:
tmux source-file ~/.tmux.conf
Las opciones definidas mientras tmux está en marcha duran hasta que termina el servidor de tmux. history-limit se aplica a los paneles nuevos, no a los existentes.
Mensajes que puedes ver
| Mensaje | Significado |
|---|---|
no server running on /tmp/tmux-1000/default | No existe ninguna sesión, por ejemplo tras un reinicio |
can't find session: work | Ese nombre no existe. Revisa tmux ls |
Para saber por qué las sesiones sobreviven a una conexión caída y qué es lo que no sobreviven, lee cómo mantener vivas las sesiones SSH con tmux.
Si todavía dudas entre las dos herramientas, lee tmux o screen.
Preguntas
¿Cómo se sube en el historial de tmux?
Pulsa Ctrl+b [ para entrar en el modo copia y usa las flechas o Re Pág. Pulsa q para salir. Con set -g mouse on en ~/.tmux.conf, la rueda del ratón también desplaza.
¿Cómo salgo de tmux sin cerrar la sesión?
Pulsa Ctrl+b d. La sesión y sus programas siguen en marcha, y tmux attach -t work la recupera.
¿Cómo se cierra una sesión de tmux?
Ejecuta tmux kill-session -t work, o escribe exit en su última shell. tmux kill-server cierra todas las sesiones.
¿Cómo cambio el prefijo de tmux a Ctrl+a?
Añade set -g prefix C-a, unbind C-b y bind C-a send-prefix a ~/.tmux.conf y ejecuta tmux source-file ~/.tmux.conf. Pulsa dos veces Ctrl+a cuando un programa necesite el propio Ctrl+a.