Como utilizar o tmux

Já deve ter ouvido falar de tmux. Hoje vamos falar sobre como utilizar o tmux, ou seja: o que é, para que serve e como utilizá-lo.

O que é TMUX?

El comando tmux es un multiplexor de terminales, como también lo es el comando screen. En este Articulo vamos a comparar los dos ¿Es tmux realmente mejor, o es solo es un tema de preferencias?

Mas o que é um multiplexador terminal?

Bem, um multiplexador terminal é um sistema que nos permite ter pseudo-terminais “dentro de um terminal”. Ou seja, quando executamos o comando screen ou tmux, por exemplo, podemos sair da sessão screen mas mais tarde podemos reentrar e recuperar a sessão (e o programa terá continuado a sua execução se estivesse a correr). Isto é útil para evitar que nos desliguem da execução de um comando se nos desligarem, por exemplo. Com o tmux, podemos também dividir o ecrã em vários terminais, ampliar um, voltar a dividir os ecrãs, etc.

Instalação de tmux

A instalação do tmux é realmente simples. no ubuntu, por exemplo:

sudo apt-get install tmux

Nos sistemas baseados no RedHat:

yum install tmux

E em sistemas baseados em Arch Linux:

sudo pacman -Sy tmux

Iniciar uma sessão de tmux

Para iniciar uma nova sessão, basta digitar tmux no terminal e pressionar enter.

Quando iniciarmos uma nova sessão de tmux, veremos na barra de estado uma barra de estado mostrando o nome do host, data e hora. No lado esquerdo, são apresentadas mais informações relacionadas com a sessão:

  • [0]: Indica o nome da sessão, por defeito representado por números que começam com zero.
  • 0: bash *: O 0 indica o número da janela, neste caso, a primeira janela da sessão. Se executar outra aplicação, o nome desta irá substituir a bash. O asterisco representa que esta é a janela que tem o foco. Cada vez que se abre uma nova sessão, janela ou programa, estes dados são modificados.

Uma das diferenças entre o comando tmux e screen é precisamente esta barra de estado, com screen você não a tem.

Iniciar uma sessão com um nome personalizado

Para alterar o nome da sessão, executar o comando tmux como se segue:

tmux nuevo -s NOMBRE

Isto é, se quisermos nomear a sessão como minha sessão1 , será:

tmux nuevo -s my-session1

A barra de estado irá mostrar: [my-session1] 0:bash* 

Começar com o tmux

A aplicação tmux tem muitas opções, para aceder a elas tem de pressionar as teclas CTRL+b e depois de pressionar estas duas teclas em conjunto pressione apenas a tecla indicada no comando.

Listar sessões de tmux activas

Para listar sessões activas com o tmux, faz exactamente o mesmo que com o screen, utilizando o sub-comando tmux ls, como se mostra abaixo:

ger@host:~$ tmux ls
1: 1 windows (created Thu Oct 27 07:50:46 2022)
ger@host:~$

O primeiro número que aparece é o nome da sessão, no caso de uma sessão chamada “mysess” pareceria assim:

ger@host:~$ tmux ls
mysess: 1 windows (created Thu Oct 27 07:50:46 2022)
ger@host:~$

Recuperar sessões activas

Depois de listarmos as sessões activas, podemos recuperá-las com tmux attach -t SESSION_NAME onde SESSION_NAME é o nome da sessão, como se vê abaixo:

ger@host:~$ tmux ls
mysess: 1 windows (created Thu Oct 27 07:20:46 2022)
ger@host:~$ tmux attach -t mysess

 

Sair da sessão actual deixando-a em segundo plano

Se estivermos numa sessão e quisermos deixá-la em segundo plano, podemos correr CTRL+b e depois d para deixar a sessão a correr em segundo plano:

Isto pode ser útil para deixar as tarefas de longa duração em segundo plano e recuperar a sessão mais tarde, como faríamos com o screen.

Tendo scroll em tmux

Se começou a “jogar” com tmux pode pensar que não tem scroll, se precisar de scroll, deve premir CTRL+b e depois RE-PAG com isto poderá rolar sem problemas ou rolar com as setas direccionais para cima e para baixo.

Lista de comandos para tmux

Um resumo rápido do que pode ser feito em termos gerais é o seguinte:

Comandos de sessão

Acção Comando Descrição
Criar nova sessão tmux new -s SESSION_NAME Criar uma nova sessão de tmux
Entrar na sessão activa do tmux tmux attach -t SESSION_NAME Recuperar uma sessão activa
Listar sessões de tmux activas tmux ls Lista de sessões de tmux
Deixar a sessão em background CTRL+b y despois d Deixar uma sessão de tmux em segundo plano

Comandos de janela

Acção Comando (a ser executado após CTRL+b) Descrição
Criar nova janela c Cria uma nova janela na sessão activa
Mudar para a janela seguinte n Passa para a seguinte janela dentro da sessão activa
Mudar para a janela anterior p Passa para a janela anterior da sessão activa
Fechar janela x Fechar janela activa da sessão em curso (pede confirmação)

Comandos de painel

Acção Comando (a ser executado após CTRL+b) Descrição
Dividir horizontalmente a janela actual Dividir horizontalmente a janela activa em 2 vidros (2 terminais).
Dividir a janela actual verticalmente % Dividir verticalmente a janela activa em 2 vidros (2 terminais)
Alterar painel activo Seta direccional Alterar o painel activo utilizando as setas direccionais para escolher a direcção do painel a alterar.
Breve apresentação dos números do painel q Cada painel tem um número atribuído, este comando mostra-os durante um curto período de tempo.
Percorrer os painéis por ordem até ter passado por todos eles. o Percorrer os painéis por ordem até ter passado por todos eles.
Troca a posição do painel actual com o próximo. } Trocar a posição dos painéis com a seguinte, mesmo que ambos tenham algo em funcionamento.
 Troca a posição do painel actual com o anterior. { Trocar a posição dos painéis com a anterior, mesmo que ambos tenham algo em funcionamento.
Fecha o painel actual. x Fecha o painel actual (pede confirmação)
Maximiza ou redimensiona o painel actual para o tamanho normal z Maximiza ou redimensiona o painel actual para o tamanho normal

Deixe um comentário