Como fazer um clicker automático com tecla global de início e parada

Como fazer um clicker automático com tecla global de início e parada

Então, eu tenho um script de clique automático que é este comando simples:Tributo

xdotool click --delay 5 --repeat 900000 1

Tenho que mudar para o terminal e Ctrl-Cinterromper o script para interrompê-lo. Depois é só executá-lo novamente para reiniciar.

Então comecei a usar o readcomando para verificar a entrada de teclas para evitar essa alternância. No entanto, isso apenas verifica a entrada no terminal. Estou clicando em outro lugar e quero poder começar e parar a partir daí.

Existe uma versão readque pode verificar as teclas digitadas globalmente?

Responder1

Ao digitar xinput --list, você obtém uma lista de todos os dispositivos de entrada do seu sistema. Você também pode obter programaticamente o estado de cada chave usando xinput --query-state DEVICE_ID.

1 class :
KeyClass
    key[0]=up
    key[1]=up
    key[2]=up
...

Primeiro, você precisará descobrir o código-chave que deseja usar. Você pode fazer isso executando xinput --test DEVICE_IDe pressionando a tecla.

key press   ###
key release ###

Depois de encontrar a chave correta, crie um script como este.

#!/bin/bash

while true; do

# Replace DEVICE_ID and KEYCODE.
inp=`xinput --query-state DEVICE_ID | grep -o 'button\[KEYCODE\]=down'`

if [ ! -z "$inp" ]; then

xdotool click 1

fi

done

Isso irá enviar spam, clique no botão do mouse enquanto o usuário mantém pressionado um botão

Responder2

Você pode usar outra extensão - numlockx

Aqui está a ideia.

você instalaria xdotools e numlockx viasudo apt-get install -y numlockx xdotool

então você iria em frente e usaria algo assim.

DELAY=5
while true
do
  NUMLOCK=$(numlockx status)
    if [ "$NUMLOCK" == "Numlock is on" ]
    then
    xdotool click 1
    fi
  sleep $DELAY
done

Isso resulta em um clicker global com um atraso de 5 segundos associado ao seu numlock. você pode alterar o atraso para que ele clique em intervalos mais curtos.

informação relacionada