Dicas do Linux para usar o GNU Screen
Aprenda o básico da multiplexação de terminal com o GNU Screen e baixe nossa folha de dicas para ter sempre os atalhos essenciais à mão.
Para o usuário médio, uma janela de terminal pode ser desconcertante e enigmática. Mas à medida que você aprende mais sobre o terminal Linux, não demorará muito para perceber o quão eficiente e poderoso ele é. Também não demora muito para você querer que ele seja ainda mais eficiente, e que melhor maneira de tornar seu terminal melhor do que colocar mais terminais nele?
Multiplexação de terminais
Uma das muitas vantagens do terminal é que ele é uma interface centralizada com controles centralizados. É uma janela que permite acesso a centenas de aplicativos, e tudo que você precisa para interagir com cada um deles é um teclado. Mas os computadores modernos quase sempre têm poder de processamento de sobra, e os computadores modernos adoram realizar multitarefas, portanto, uma janela para centenas de aplicativos pode ser bastante limitante.
Uma resposta comum para essa falha é a multiplexação de terminal: a capacidade de colocar janelas de terminais virtuais umas sobre as outras e depois mover-se entre todas elas. Com um multiplexador, você mantém seu controle centralizado, mas ganha a capacidade de trocar a interface durante a multitarefa. Melhor ainda, você pode dividir suas telas virtuais em seu terminal para ter várias telas ativadas ao mesmo tempo.
Escolha o multiplexador certo
Alguns terminais oferecem recursos semelhantes, com interfaces com guias e visualizações divididas, mas existem diferenças sutis. Em primeiro lugar, as funcionalidades destes terminais dependem de um ambiente gráfico de desktop. Em segundo lugar, muitos recursos do terminal gráfico exigem interação com o mouse ou usam atalhos de teclado inconvenientes. Os recursos de um multiplexador de terminal funcionam tão bem em um console de texto quanto em uma área de trabalho gráfica, e os atalhos de teclado são convenientemente projetados em torno de sequências de terminal comuns.
Existem dois multiplexadores populares: tmux e GNU Screen. Eles fazem a mesma coisa e possuem principalmente os mesmos recursos, embora a maneira como você interage com cada um seja um pouco diferente. Este artigo é um guia de primeiros passos para o GNU Screen. Para obter informações sobre o tmux, leia a introdução de Kevin Sonney ao tmux.
Usando a tela GNU
O uso básico do GNU Screen é simples. Inicie-o com o comando screen
e você será colocado na janela zero em uma sessão de tela. Você dificilmente notará alguma mudança até decidir que precisa de um novo prompt.
Quando uma janela do terminal está ocupada com uma atividade (por exemplo, você iniciou um editor de texto como Vim ou Jove, ou está processando vídeo ou áudio, ou executando um trabalho em lote), basta abrir uma nova. Para abrir uma nova janela, pressione Ctrl+A, solte e pressione c. Isso cria uma nova janela em cima da janela existente.
Você saberá que está em uma nova janela porque seu terminal parece estar livre de qualquer coisa além do prompt padrão. Seu outro terminal ainda existe, é claro; está apenas se escondendo atrás do novo. Para percorrer as janelas abertas, pressione Ctrl+A, solte e depois n para próximo ou p para anterior. Com apenas duas janelas abertas, n e p funcionalmente fazem a mesma coisa, mas você sempre pode abrir mais janelas (Ctrl+A e então c) e percorra-os.
Tela dividida
O comportamento padrão da tela GNU é mais parecido com a tela de um dispositivo móvel do que com a de um desktop: você só pode ver uma janela por vez. Se você usa o GNU Screen porque adora realizar multitarefas, poder focar em apenas uma janela pode parecer um retrocesso. Felizmente, o GNU Screen permite dividir seu terminal em janelas dentro de janelas.
Para criar uma divisão horizontal, pressione Ctrl+A e depois Shift+S (maiúsculas). Isso coloca uma janela acima da outra, assim como os vidros das janelas. O espaço dividido, entretanto, fica sem propósito até que você diga o que exibir. Assim, depois de criar uma divisão, você pode ir para o painel de divisão com Ctrl+A e depois Tab. Uma vez lá, use Ctrl+A e depois n para navegar por todas as janelas disponíveis até que o conteúdo que você deseja exibir esteja no painel dividido.
Você também pode criar divisões verticais com Ctrl+A e depois | (que é uma barra vertical ou a opção Shift do \< tecla na maioria dos teclados).
Torne a tela GNU sua
A tela GNU usa atalhos baseados em Ctrl+A. Dependendo dos seus hábitos, isso pode parecer muito natural ou extremamente inconveniente porque você usa Ctrl+A para ir para o início de uma linha de qualquer maneira. De qualquer forma, o GNU Screen permite todo tipo de personalização através do arquivo de configuração .screenrc
. Você pode alterar o atalho de teclado do gatilho (chamado de atalho de teclado "escape") com isto:
escape ^jJ
Você também pode adicionar uma linha de status para ajudá-lo a se manter orientado durante uma sessão de tela:
# status bar, with current window highlighted
hardstatus alwayslastline
hardstatus string '%{= kG}[%{G}%H%? %1`%?%{g}][%= %{= kw}%-w%{+b yk} %n*%t%?(%u)%? %{-}%+w %=%{g}][%{B}%m/%d %{W}%C%A%{g}]'
# enable 256 colors
attrcolor b ".I"
termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm'
defbce on
Ter um lembrete sempre ativo de qual janela tem atividade em foco e quais janelas têm atividade em segundo plano é especialmente útil durante uma sessão com várias janelas abertas. É uma espécie de gerenciador de tarefas para o seu terminal.
Baixe a folha de dicas
Ao aprender o GNU Screen, você terá muitos comandos de teclado novos para lembrar. Alguns você se lembrará imediatamente, mas aqueles que você usa com menos frequência podem ser difíceis de controlar. Você sempre pode acessar uma tela de Ajuda dentro da Tela GNU com Ctrl+A e depois ?, mas se preferir algo que você pode imprimir e guardar em seu teclado, baixe nossa folha de dicas da tela GNU.
Aprender o GNU Screen é uma ótima maneira de aumentar sua eficiência e entusiasmo com seu emulador de terminal favorito. De uma chance!