Marcio Cunha

Como organizar atalhos e janelas no Ubuntu com xdotool

Aprenda a controlar o posicionamento de janelas e criar atalhos personalizados no Ubuntu usando scripts simples em xdotool e comandos do terminal.

Marcio Cunha•5 min
Também disponível em:EnglishEspañol
Resumo
  • O xdotool simula entradas de teclado e mouse, permitindo manipular janelas programaticamente no Linux.
  • Identificar o ID de uma janela específica é o primeiro passo para redimensioná-la e posicioná-la via script.
  • É possível mapear comandos complexos de posicionamento para atalhos globais de teclado no ambiente gráfico.
  • Rotinas de automação reduzem cliques repetitivos e otimizam o fluxo de trabalho diário em múltiplos monitores.
  • Combinar ferramentas do terminal com o gerenciador de janelas garante total controle sobre o espaço de trabalho.

O que é o xdotool e por que usá-lo para automação visual

Gerenciar várias janelas abertas na tela todos os dias pode se tornar uma tarefa exaustiva, especialmente quando você precisa alinhar editores, navegadores e terminais em posições específicas. No ecossistema Linux, o comando xdotool funciona como um autômato invisível para o ambiente gráfico, permitindo simular cliques do mouse, digitação no teclado e movimentação de janelas diretamente pelo terminal. Na prática, isso significa que você pode criar pequenos roteiros de comandos chamados scripts para organizar todo o seu espaço de trabalho em segundos, economizando cliques preciosos e mantendo o foco nas tarefas importantes. Essa abordagem é excelente para quem gosta de produtividade e busca alternativas rápidas, complementando outras rotinas de otimização de desktop, como como organizar janelas no Windows com atalhos de teclado se você transita entre sistemas operacionais diferentes no dia a dia.

Como instalar e verificar o funcionamento básico da ferramenta

Antes de começar a automatizar qualquer coisa, precisamos garantir que o utilitário esteja instalado no seu sistema operacional. O Ubuntu e a grande maioria das distribuições Linux trazem essa biblioteca disponível em seus repositórios oficiais, o que facilita bastante a instalação através de um único comando rápido no terminal. Para instalar, basta abrir a sua tela preta de comandos e executar a instrução padrão de gerenciamento de pacotes do sistema. Uma vez instalado, você pode realizar testes simples para verificar se o programa consegue interagir corretamente com o servidor gráfico atual, que gerencia a exibição das janelas na sua tela.

  1. Abra o terminal do Ubuntu pressionando as teclas Ctrl, Alt e T simultaneamente.
  2. Execute o comando de instalação digitando
    sudo apt update && sudo apt install xdotool -y
    e informe sua senha quando solicitado.
  3. Teste a instalação verificando a versão atual da ferramenta com o comando
    xdotool version
    na linha de comando.

Identificando janelas e descobrindo seus identificadores únicos

Para que o computador consiga mover ou redimensionar uma janela específica, ele precisa saber exatamente quem é quem na pilha de aplicativos abertos na sua área de trabalho. Cada janela em execução possui um número de identificação exclusivo chamado ID, que funciona como um RG digital para o sistema operacional. Através do comando xdotool search, é possível procurar por parte do título de um aplicativo, como o nome do navegador ou de um editor de texto, e capturar esse número automaticamente. Quando combinamos essa busca com comandos de redimensionamento, eliminamos a necessidade de usar o mouse para arrastar bordas e alinhar pixels manualmente todos os dias.

Criando comandos para redimensionar e posicionar janelas

Com o identificador da janela em mãos, a mágica da automação realmente acontece através de parâmetros matemáticos que definem coordenadas de tela e dimensões em pixels. O comando windowmove posiciona o canto superior esquerdo da janela em uma coordenada X e Y específica do monitor, enquanto o comando windowsize define a largura e a altura exatas que o aplicativo deve ocupar. Na prática, se você possui um monitor grande, pode criar um script que joga o navegador para a metade esquerda e o terminal para a metade direita com apenas um comando. Esse nível de personalização lembra bastante a agilidade que buscamos quando precisamos como mesclar arquivos PDF no Linux pelo terminal com pdftk para resolver tarefas burocráticas com extrema velocidade.

Escrevendo um script em shell para automatizar a rotina

Em vez de digitar vários comandos longos no terminal todas as vezes que ligar o computador, podemos reunir tudo isso em um arquivo de script executável. Um script em shell é basicamente uma lista de instruções que o terminal lê e executa linha por linha de forma sequencial e automatizada. Podemos criar um arquivo chamado organizar.sh, inserir as instruções para abrir nossos aplicativos favoritos, aguardar alguns segundos para que eles carreguem completamente e, em seguida, posicionar cada um em seu devido lugar na tela. Essa rotina elimina o atrito inicial do dia de trabalho e garante que seu ambiente gráfico esteja perfeitamente estruturado exatamente do jeito que você gosta, sem esforço manual.

#!/bin/bash
# Abre o navegador e o terminal em posições específicas
google-chrome &
sleep 1
WID=$(xdotool search --class "google-chrome" | head -n 1)
xdotool windowmove $WID 0 0
xdotool windowsize $WID 960 1080

gnome-terminal &
sleep 1
WID_TERM=$(xdotool search --class "gnome-terminal-server" | head -n 1)
xdotool windowmove $WID_TERM 960 0
xdotool windowsize $WID_TERM 960 1080

Vinculando scripts a atalhos de teclado globais no Ubuntu

Um script perfeito perde um pouco da sua utilidade se você precisar abrir o terminal e digitar o nome dele toda vez que quiser usá-lo. A grande sacada para transformar isso em um hábito fluido é associar o seu script personalizado a uma combinação de teclas global do sistema operacional, como Ctrl + Alt + O. Nas configurações do Ubuntu, na seção de atalhos de teclado, você pode adicionar um atalho personalizado apontando diretamente para o caminho do arquivo executável que criamos anteriormente. Dessa forma, sempre que o caos se instalar na sua tela com janelas espalhadas, basta pressionar o seu atalho mágico para que o sistema coloque tudo em ordem instantaneamente. Para aprofundar esses conceitos na prática em produção, confira também nossa análise técnica sobre Como testar display OLED com osciloscópio e achar falhas.

Considerações finais sobre produtividade com automação visual

Automatizar pequenos detalhes da interface gráfica com o xdotool transforma a maneira como interagimos com o sistema operacional Linux no dia a dia. Embora ferramentas modernas de gerenciamento de janelas baseadas em mosaico ofereçam recursos nativos complexos, dominar scripts simples dá a você liberdade total para criar soluções sob medida sem precisar trocar de ambiente gráfico. Investir alguns minutos criando esses gatilhos visuais retribui em horas de foco preservadas ao longo da semana, reduzindo o cansaço mental gerado por tarefas repetitivas de organização de tela.