![So erstellen Sie einen Auto-Clicker mit globaler Start- und Stopptaste](https://rvso.com/image/111969/So%20erstellen%20Sie%20einen%20Auto-Clicker%20mit%20globaler%20Start-%20und%20Stopptaste.png)
Ich habe also ein Auto-Clicker-Skript mit diesem einfachen Befehl:Tribut
xdotool click --delay 5 --repeat 900000 1
Ich muss zum Terminal wechseln und Ctrl-C
das Skript unterbrechen, um es zu stoppen. Dann muss ich es einfach erneut ausführen, um es neu zu starten.
read
Um dieses Hin- und Herschalten zu vermeiden, habe ich angefangen, den Befehl zur Überprüfung der Tasteneingaben zu verwenden . Allerdings wird dabei nur die Eingabe am Terminal überprüft. Ich klicke woanders hin und möchte von dort aus starten und stoppen können.
Gibt es eine Version, read
die Tastenanschläge global überprüfen kann?
Antwort1
Durch Eingeben von xinput --list
erhalten Sie eine Liste aller Eingabegeräte in Ihrem System. Sie können den Status jeder Taste auch programmgesteuert abrufen, indem Sie verwenden xinput --query-state DEVICE_ID
.
1 class :
KeyClass
key[0]=up
key[1]=up
key[2]=up
...
Zuerst müssen Sie den Schlüsselcode herausfinden, den Sie verwenden möchten. Sie können dies tun xinput --test DEVICE_ID
, indem Sie ausführen und die Taste drücken.
key press ###
key release ###
Wenn Sie den richtigen Schlüssel gefunden haben, erstellen Sie ein Skript wie dieses.
#!/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
Dadurch werden die Maustasten gespammt, während der Benutzer eine Taste gedrückt hält
Antwort2
Sie können eine andere Erweiterung verwenden - numlockx
Hier ist die Idee.
Sie installieren xdotools und numlockx übersudo apt-get install -y numlockx xdotool
dann würden Sie weitermachen und so etwas verwenden.
DELAY=5
while true
do
NUMLOCK=$(numlockx status)
if [ "$NUMLOCK" == "Numlock is on" ]
then
xdotool click 1
fi
sleep $DELAY
done
Das Ergebnis ist ein globaler Klicker mit einer 5-Sekunden-Verzögerung, der mit Ihrer Numlock-Taste verknüpft ist. Sie können die Verzögerung ändern, damit er in kürzeren Abständen klickt.