使用特定标题提升所有窗口

我正试图找到一种方法来提升所有具有一个特定标题的窗口。

例如,我有两个名为superconky窗口(是的,你猜对了,我想在lubuntu中运行一下)。

我从LXDE论坛获得了一个命令: sh -c 'wmctrl -k on; wmctrl -a superconky;' sh -c 'wmctrl -k on; wmctrl -a superconky;'

我用它来显示桌面,除了conky。 它工作得很好,但只有你有一个conky。 如果你有两个或更多,你剩下一个,所有其他最小化。

那么 ,我应该怎么做才能提升所有窗户?

提前致谢。

“所以,我应该怎么做才能举起所有窗户?”

大概你的意思是所有的窗户?

由于wmctrl没有通过指定窗口名称来执行您想要的操作,因此您应该使用更精确的方法来指定窗口ID。

要获取窗口ID的列表

 wmctrl -l 

因此,假设您的窗口在标题中具有超级复杂性,则仅从该列表中提取窗口ID

 windowid_list="`wmctrl -l | sed -ne 's|^\([^ ]*\).*superconky.*|\1|p'`" 

然后处理列表

 if [ -n "${windowid_list}" ] then for windowid in ${windowid_list} do wmctrl -i -a "${windowid}" done fi 

请注意,必须在动作标志(“-a”,“ – R”或其他)之前指定用于表示数字windowid的“-i”标志,否则不会发生任何事情。

另请注意,“-a”会抬起并聚焦窗口,并且一次只能聚焦一个窗口。

此外,如果第二个超级复合窗口直接位于第一个超级窗口下方,则当第二个超级窗口窗口升起时,它将遮挡第一个超级窗口窗口。