从shell获取终端的X11窗口id

ctr*_*lor 3 x11 shell

如何获取运行我的shell脚本的终端的窗口ID?

背景:我需要根据运行的虚拟桌面编写脚本来执行某些操作.要获取虚拟桌面(不是当前桌面,我可以在脚本运行时更改它),我需要终端的窗口ID脚本正在运行.如果脚本没有从终端运行,它将失败并显示错误.

小智 7

我对X11知之甚少,但是env在我的终端中运行命令时,我发现了一个环境变量WINDOWID,它在同一个终端的不同选项卡中显示相同的数字,但在另一个终端中显示不同的数字.也许那就是你需要的?

它确实是一Xterm件事(可能是任何模仿Xterm行为的终端.xterm(1)手册页只说:

环境

   Xterm sets several environment variables:
   ...
   WINDOWID
        is set to the X window id number of the xterm window.
Run Code Online (Sandbox Code Playgroud)

一些其他可能相关的问题与答案: