我想在使用的任何窗口管理器中获取当前活动的窗口。所以,我希望能与 gnome 或 kde 一起工作。但如果该解决方案仅适用于 gnome,我会很高兴。这是 Ubuntu 的较新安装,所以我假设它是 Wayland?
我需要这个来通过 ssh 工作。我想跟踪前台运行应用程序的时间。
我尝试使用xdotool getactivewindow
.但是,即使我使用与运行窗口管理器相同的用户帐户登录,并设置显示和 xauthority 变量,它仍然不起作用。其他线程表明我需要设置 -X 开关,但我在 Android 上使用 ssh 客户端,并且没有客户端 X11,因此这是不可行的。
我尝试使用 gdbus 命令,但它也不起作用
$ gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval "
global
.get_window_actors()
.map(a=>a.meta_window)
.find(w=>w.has_focus())
.get_wm_class()" | cut -d'"' -f 2
(false, '')
有什么古怪的方法可以做到这一点吗?我只需要用于会计目的的名称,不需要除此之外的任何详细信息。