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.

Como fazer capturas de tela no Linux Mint 19
As capturas de tela são uma das coisas mais básicas que todos precisam saber. Existem inúmeras situações em que até mesmo uma única captura de tela po...
Backup Timeshift Restaurar sistemas Linux Mint de uma unidade USB
Timeshift é um novo aplicativo no Linux Mint 19 Tara. Timeshift é usado para salvar um instantâneo dos diferentes estados do seu sistema operacional L...
Linux Mint 19 “Tara” Beta lançado, recursos e impressões iniciais
Ubuntu 18.04 LTS Bionic Beaver baseado no sistema operacional Linux Mint 19 O sistema operacional “Tara” Beta foi lançado e está pronto para download....