전역 시작 및 중지 키를 사용하여 자동 클릭커를 만드는 방법

전역 시작 및 중지 키를 사용하여 자동 클릭커를 만드는 방법

그래서 다음과 같은 간단한 명령인 자동 클릭커 스크립트가 있습니다.공물

xdotool click --delay 5 --repeat 900000 1

터미널로 전환하고 Ctrl-C스크립트를 중단하여 중지해야 합니다. 그런 다음 다시 실행하여 다시 시작하세요.

read그래서 저는 이러한 전환을 피하기 위해 키 입력을 확인하는 명령을 사용하기 시작했습니다 . 그러나 이는 터미널에서의 입력만 확인합니다. 다른 곳을 클릭하고 있는데 거기에서 시작하고 중지할 수 있기를 원합니다.

read전역적으로 키 입력을 확인할 수 있는 버전이 있나요 ?

답변1

를 입력하면 xinput --list시스템의 모든 입력 장치 목록이 표시됩니다. 를 사용하여 프로그래밍 방식으로 각 키의 상태를 가져올 수도 있습니다 xinput --query-state DEVICE_ID.

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

먼저, 사용하려는 키코드를 알아내야 합니다. 를 실행 xinput --test DEVICE_ID하고 키를 누르면 됩니다 .

key press   ###
key release ###

올바른 키를 찾으면 다음과 같은 스크립트를 만드십시오.

#!/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

사용자가 버튼을 누르고 있는 동안 마우스 버튼을 클릭하면 스팸이 발생합니다.

답변2

다른 확장명인 numlockx를 사용할 수 있습니다.

아이디어는 다음과 같습니다.

다음을 통해 xdotools 및 numlockx를 설치합니다.sudo apt-get install -y numlockx xdotool

그런 다음 계속해서 이와 같은 것을 사용합니다.

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

이로 인해 numlock과 관련된 5초 지연이 있는 전역 클릭커가 생성됩니다. 더 짧은 간격으로 클릭하도록 지연을 변경할 수 있습니다.

관련 정보