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

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

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

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

이로 인해 글로벌 클릭커가 5초 지연 후 NUMBER LOCK 키와 연결됩니다. 더 짧은 간격으로 클릭되도록 지연을 변경할 수 있습니다.

관련 정보