是否可以获取显示特定应用程序的屏幕/显示器名称?

是否可以获取显示特定应用程序的屏幕/显示器名称?

我想知道 GUI 应用程序显示在哪个屏幕/显示器(不是桌面)上。

例如:我的邮件客户端在我的第三个桌面上运行,该桌面显示在我的第二个显示器(“DP-1-3”)上。因此,我的邮件客户端显示在“DP-1-3”上。

我尝试过使用xdotool selectwindow get_desktop_for_window,但这会返回虚拟桌面编号/ID,而不是实际的屏幕/显示器。最好,我希望看到屏幕/显示器的名称,因为它们显示在xrandr.

谢谢你!

答案1

经过@dirkt 的一些帮助(非常感谢!),我终于弄清楚了。这不是最漂亮的解决方案,但以下对我有用:

  1. 使用 获取正在运行的应用程序的桌面wmctrl -l
  2. 使用 查找此桌面的偏移量wmctrl -d
  3. 通过将此偏移量与活动监视器的偏移量进行比较xrandr --listactivemonitors

使用awk我能够找到我需要的确切内容,并将其传递。如果有人有更好的解决方案,请告诉我!现在,我将使用这个。

相关内容