Mouse

Como usar o Xdotool para estimular cliques do mouse e pressionamentos de tecla no Linux

Como usar o Xdotool para estimular cliques do mouse e pressionamentos de tecla no Linux
Xdotool é uma ferramenta de linha de comando gratuita e de código aberto para simular cliques do mouse e pressionamentos de tecla. Este artigo irá cobrir um breve guia sobre como usar o xdotool para automatizar entradas de teclado e mouse. Xdotool funciona apenas no servidor de exibição X e não há suporte para o Wayland (no momento em que este artigo foi escrito).

Instalando Xdotool

Para instalar o xdotool no Ubuntu, execute o comando abaixo:

$ sudo apt install xdotool

Para instalar o xdotool em outras distribuições Linux, procure o termo “xdotool” no gerenciador de pacotes. Xdotool está incluído nos repositórios da maioria das distribuições Linux.

Simular um pressionamento de tecla

Você pode usar o xdotool para simular um pressionamento de tecla executando o comando abaixo. Substitua “n” por qualquer tecla ou caractere válido no layout do teclado.

$ xdotool chave n

Observe que o comando acima irá simular um pressionamento e liberação de tecla um após o outro e você não notará nenhum atraso entre esses eventos. Caso queira simulá-los separadamente, use os seguintes comandos:

$ xdotool keydown n
$ xdotool keyup n

Simule um pressionamento de tecla com uma tecla modificadora

As teclas modificadoras modificam o comportamento dos pressionamentos de tecla quando duas ou mais teclas são pressionadas simultaneamente. E.g. , e assim por diante. O processo de execução de combinações de teclas usando xdotool também é bastante semelhante:

$ xdotool key ctrl + s

Você pode encontrar nomes corretos para as teclas do teclado usando o seguinte comando:

$ xev

Uma pequena janela se abrirá. Mantenha o foco e pressione qualquer tecla. Você obterá o nome da chave na saída do terminal.

Simular Teclas de Repetição / Turbo / Fogo Rápido

Para simular vários pressionamentos de tecla ao longo de um período de tempo, você terá que especificar quantas vezes os pressionamentos de tecla devem ser simulados e o intervalo entre cada pressionamento de tecla. Para fazer isso, execute um comando no seguinte formato:

$ xdotool chave --repetir 5 - atrasar 50 n

Substitua os valores dos interruptores "-repeat" e "-delay" (em milissegundos) de acordo com seus requisitos. Observe que tive problemas de repetição ao definir o atraso para mais de 500 ms. Isso pode ser um bug ou comportamento intencional e se você estiver enfrentando problemas semelhantes, evite definir valores de atraso altos. Você pode usar as instruções de loop "for" e "while" para superar essa limitação.

O comando indicado abaixo irá inserir a tecla "n" três vezes com um atraso de 2 segundos entre cada pressionamento de tecla.

$ para i em 1… 3; faça xdotool chave n; dormir 2; feito

Você também pode usar um loop while para simular repetidamente pressionamentos de tecla até que o loop seja interrompido manualmente usando chave.

$ while true; faça xdotool chave n; dormir 2; feito

Simule uma sequência de teclas

Para simular várias chaves uma após a outra, use um comando no seguinte formato:

$ x chave da ferramenta x y z

Simular cliques do mouse

Para simular um clique com o botão direito na localização atual do ponteiro, execute o comando abaixo:

$ xdotool click 3

Substitua “3” por qualquer número da referência abaixo:

Se você quiser usar um conjunto diferente de coordenadas, use um comando no seguinte formato:

$ xdotool mousemove 100 100 clique 3

Substitua "100" pelas coordenadas desejadas como "X" e "Y" no canto superior esquerdo da tela.

Observe que vários exemplos explicados até agora com pressionamentos de tecla também podem ser usados ​​com cliques do mouse.

Obter janela ativa e minimizá-la

O comando a seguir obterá a ID da janela atualmente em foco e a minimizará:

$ xdotool getactivewindow windowminimize

Consulte a página do homem

Xdotool inclui inúmeras opções e você pode usar inúmeras combinações diferentes para personalizar o comportamento das teclas e cliques do mouse. Não é possível cobrir todos os casos de uso aqui, você pode consultar a página do manual executando o comando abaixo:

$ man xdotool

Você também pode acessar a página do manual online.

Mapeie comandos e scripts Xdotool para atalhos de teclado

Você pode usar a GUI de configuração de atalhos de teclado disponível nas configurações do sistema de sua distribuição para atribuir comandos xdotool simples a atalhos de teclado personalizados. No caso de instruções complexas e múltiplas, salve os comandos em um script e, em seguida, mapeie o script para o atalho de teclado.

Conclusão

Xdotool é um dos melhores utilitários disponíveis para automatizar entradas de teclado e mouse no Linux. Você pode executar macros simples, bem como comandos complexos, encadeando várias entradas simuladas.

Instale o último jogo de estratégia OpenRA no Ubuntu Linux
OpenRA é um motor de jogo de estratégia em tempo real Libre / Free que recria os primeiros jogos Westwood como o clássico Command & Conquer: Red Alert...
Instale o emulador Dolphin mais recente para Gamecube e Wii no Linux
O Dolphin Emulator permite que você jogue seus jogos de Gamecube e Wii escolhidos em computadores pessoais Linux (PC). Sendo um emulador de jogo disp...
Como usar o GameConqueror Cheat Engine no Linux
O artigo cobre um guia sobre como usar o mecanismo de cheat GameConqueror no Linux. Muitos usuários que jogam no Windows costumam usar o aplicativo “C...