shell 脚本中的 xdotool 无法与 xbindkeys 一起正常工作

shell 脚本中的 xdotool 无法与 xbindkeys 一起正常工作

我为此奋斗了很长时间。我有一个非常简单的脚本:

#!/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 在终端中疯狂地发送垃圾邮件,但点击未在操作系统中注册,但是,当我发送按钮 12 时,它有时会注册几次按钮 1 的点击。我还尝试了一些计时技巧和在互联网上找到的其他解决方案,但没有成功。

此外,当我的配置如下所示时:

"xdotool click 1"
    b:12

它的作用是一样的,检测到点击,但是点击 1 命令未被操作系统注册。

但是,当配置如下所示时:

"xdotool click 1"
    b:12 + release

点击就可以了。

当我按住按钮 12 并在终端中执行脚本时,它会按预期工作,甚至在我释放它时退出,因此脚本工作正常。有人知道为什么xdotool运行xbindkeys不起作用吗?

相关内容