TMUX
Sobre
tmux é um multiplexador de terminal: permite criar, acessar e controlar múltiplos terminais (sessões, janelas e painéis) a partir de uma única tela. Uma sessão tmux pode ser destacada (“detach”) do terminal e continuar rodando em segundo plano, sendo reconectada (“attach”) depois — inclusive de outra máquina via SSH. É open-source, licenciado sob ISC License, com mais de 46 mil estrelas no GitHub, e roda em OpenBSD, FreeBSD, NetBSD, Linux, macOS e Solaris.
- Repositório: github.com/tmux/tmux
- Documentação: manpage
tmux.1(viaman tmux)
Dependências
- libevent 2.x
- ncurses
- Compilador C (gcc/clang), make, pkg-config e yacc/bison (para build a partir do source)
Instalação
Via gerenciador de pacotes (recomendado na maioria dos sistemas — ex.: apt, brew, pacman).
A partir do tarball de release:
./configure && make
sudo make install
A partir do código-fonte (branch master):
git clone https://github.com/tmux/tmux.git
cd tmux
sh autogen.sh
./configure && make
Conceitos Principais
- Sessão: um “workspace” independente que agrupa janelas; pode ser destacada e reanexada sem perder estado.
- Janela (window): equivalente a uma aba, ocupa a tela inteira dentro da sessão.
- Painel (pane): subdivisão de uma janela, permitindo múltiplos terminais lado a lado.
- Prefixo: por padrão
Ctrl+b, precede todos os atalhos de comando do tmux.
Comandos Essenciais
CLI (fora do tmux)
tmux new -s nome— cria uma nova sessão nomeadatmux attach -t nome— reconecta a uma sessão existentetmux ls— lista sessões ativastmux kill-session -t nome— encerra uma sessão
Atalhos (dentro do tmux, após o prefixo Ctrl+b)
d— detach (sai sem encerrar a sessão)c— cria nova janelan/p— próxima / janela anterior%/"— divide o painel vertical / horizontalmentesetas— navega entre painéisx— fecha o painel atual