You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu Cinnamon桌面环境下如何通过bash获取鼠标悬停窗口的WID?

搭载Cinnamon桌面的Ubuntu系统获取鼠标指向窗口WID的方法

操作前提

  • 当前Cinnamon桌面运行在X11协议下(Ubuntu Cinnamon默认采用该配置,若手动切换过Wayland协议需先切回X11,否则无法通过X11工具读取全局窗口信息)

方法1:使用xdotool(调用最简单,推荐)

xdotool是常用的X11窗口自动化工具,使用前先确认已安装,未安装可执行命令:
sudo apt update && sudo apt install -y xdotool

安装完成后,执行以下任意一条命令即可直接输出当前鼠标指针指向窗口的WID:

  • 命令1:直接提取输出字段
    xdotool getmouselocation | sed -n 's/.*window:\([0-9]*\).*/\1/p'
  • 命令2:通过shell变量导出,适合脚本中调用
    eval $(xdotool getmouselocation --shell) && echo $WINDOW

方法2:使用系统自带X11工具(无需安装额外软件)

Ubuntu Cinnamon默认预装x11-utils工具包,可直接调用内置命令获取WID,工具包缺失可执行命令补装:
sudo apt install -y x11-utils

直接执行如下命令即可输出对应WID:
xquerypointer -root | awk '{print $1}'

补充说明

  • 若鼠标当前指向桌面空白区域,返回值为桌面根窗口的WID,属于正常结果
  • 输出的WID可直接传入其他窗口管理命令(如wmctrl、xkill、xprop等)使用

内容的提问来源于stack exchange,提问作者Alfred.37

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 04:48:01