나는 이것으로 오랫동안 어려움을 겪었습니다. 매우 간단한 스크립트가 있습니다.
#!/bin/bash
while true; do
if [ ! -z "$(/usr/bin/xinput --query-state 17 | grep -o 'button\[12\]=down')" ]; then
/usr/bin/xdotool click --delay 18 1
else
break
fi
done
마우스 버튼 12를 누른 상태에서 실행하고 싶으므로 파일은 .xbindkeysrc
다음과 같습니다.
"bash ~/Scripts/test2.sh"
b:12
작동합니다. xbindkeys -v
터미널에 미친 듯이 버튼 1 스팸이 표시되지만 클릭이 OS에 등록되지 않습니다. 저는 xfce를 사용하여 Debian 12를 실행하고 있으므로 당연히 X11을 사용하고 있습니다. 그러나 버튼 12에 스팸을 보내면 버튼 1 클릭이 여러 번 등록되는 경우가 있습니다. 나는 또한 stackoverflow에서 제안된 몇 가지 타이밍 트릭과 다른 것들을 시도했지만 운이 없었습니다.
또한 내 구성이 다음과 같을 때:
"xdotool click 1"
b:12
동일한 작업을 수행합니다. 클릭이 감지되지만 click1 명령은 운영 체제에 등록되지 않습니다.
버튼 12를 누른 상태에서 터미널에서 스크립트를 실행하면 예상대로 작동하고 심지어 버튼을 놓으면 종료되므로 스크립트가 제대로 작동합니다. 왜 xdotool
실행이 xbindkeys
작동하지 않는지 아는 사람이 있습니까 ?