如何获取 Xorg 中所有窗口的列表?

Win*_*s11 3 linux xorg

我想获取 Xorg 中所有窗口的列表,及其窗口 ID 和名称。我该怎么做?我知道 xwininfo,但我必须单击特定窗口才能获取其 id。

PS:我正在使用具有多个工作区的窗口管​​理器,我想要所有工作区中的所有窗口的列表,而不仅仅是当前的窗口。

PPS:我也看过 xwininfo -tree -root ,但它的输出并不是真正的列表,并且从窗口名称判断,它似乎有一些冗余数据(多次列出相同名称的窗口),除非我误解了输出。

Ark*_*zyk 5

如果您window managerEWMH 和 NetWM 兼容的,您可以使用wmctrl

$ wmctrl  -l
0x01a0000e  0 N/A Oracle VM VirtualBox Manager
0x0120000d  0 comp uxterm
0x01000010  0 comp linux - How to get a list of all windows in Xorg? - Super User - firefox
0x00a00013  0 comp emacs@comp.lan
Run Code Online (Sandbox Code Playgroud)