为什么 `xwininfo` 和 `xdotool` 给我不同的窗口 ID?

为什么 `xwininfo` 和 `xdotool` 给我不同的窗口 ID?

在终端模拟器(lxterminal)的选项卡中,我尝试通过单击选项卡和“拥有”该窗口的进程来找出其窗口 ID(我仍然不确定用什么词来描述窗口之间的关系)和一个过程,所以我使用“自己的”),两者都是xwininfo

$ xwininfo -int | grep -Po '(?<=Window id: )[0-9a-zA-Z]+'
31457283
$ xdotool getwindowpid 31457283
1480    
$ ps aux | grep -i 1480
t         1480  0.1  0.3 473204 31240 ?        Sl   Nov21  23:18 lxterminal

xdotool

$ xdotool selectwindow 
35652689
$ xdotool selectwindow getwindowpid
window 35652689 has no pid associated with it.

为什么xwininfoxdotool我不同的窗口 ID,从而产生不同的处理结果?

谢谢。

答案1

我刚刚在工作中遇到了一个使用 xdotool 的 VNC 客户端启动脚本(抱歉,无法透露详细信息),相关的两行是 -

w=`xdotool search --name "$VNC_client"`; x=`printf 0x%x $w`; qtembed $x

因此,我从格式转换说明符(在 printf 中)怀疑,不同的数字很可能是由于用于报告结果的基数的简单差异造成的。

相关内容