Xdotool --window参数功能失效问题求助
Xdotool --window参数功能失效问题求助
我已经对着这个问题死磕好久了,现在彻底卡壳了😭。
我只是想给一个未聚焦的窗口发送单个按键输入,用的是xdotool key --window window_id这个命令。窗口确实能找到,但就是没任何反应。
举个简单的测试场景:
- 我打开两个终端窗口,在终端A里运行
xdotool getactivewindow拿到它的window_ID - 然后在终端B里执行
xdotool key --window "window_ID_A" x,命令能正常运行,但终端A里完全没反应
我做了几个 sanity check:
- 运行
sleep 5; xdotool key x,然后手动切换焦点到终端A,这时候是正常生效的 - 试了
sleep 5; xdotool key --window "window_ID_A" x,哪怕手动切焦点过去,还是没效果
如果我输入一个假的window_ID,比如xdotool key --window "window_ID_C" x,xdotool会正确 fallback 到当前聚焦的窗口,这说明我原来的命令里确实是找到了正确的窗口。我还试过加--clearmodifiers参数,把目标换成记事本或者LibreOffice,甚至用sudo运行,结果都一样——--window参数就是不起作用。
有没有什么特定的因素会阻碍这个功能生效啊?
我用的是Linux Mint 20,Xfce 64位,X11环境。
我平时这类问题最后都能自己捣鼓出来,但这次真的要被逼疯了!任何帮助我都万分感激!
临时 workaround:
我目前只想到一个临时办法,但体验很差:
tmp=$(xdotool getactivewindow); xdotool windowactivate --sync $(xdotool search --name "window_name") key x; xdotool windowactivate $tmp
每次运行脚本屏幕都会跳转到目标窗口再切回来,实在不是个好办法。
备注:内容来源于stack exchange,提问作者weons
相关产品推荐
相关产品推荐

