如何从终端关闭,最小化和最大化指定的窗口?
我正在使用GNOME 3.18运行Ubuntu GNOME 15.10,我想知道是否有一种方法可以从终端关闭,最小化,最小化,最大化和取消最大化指定的窗口?
注意 – 我看过这个Q&A – 我问的是如何从终端进行…不是如何添加按钮……按钮已经存在,我不需要添加它们。
从cli
操作窗口有两个重要的工具; xdotool
和wmctrl
。 这两个工具在function上相互重叠,但最重要的命令引用了您的问题:
在(无疑是不完整的)概述中,列出我最常使用的命令:
关上一扇窗户
wmctrl:
wmctrl -ic
最小化窗口
xdotool:
xdotool windowminimize
取消窗口最小化
wmctrl:
通过以下方式实现有效的非最小化:
wmctrl -ia
我有效地提到,因为命令移动到相应的桌面,无法最小化并提升窗口,但该命令也在未最小化的窗口上执行此操作。
最大化窗口
xdotool:
xdotool windowsize 100% 100%
wmctrl:
wmctrl -ir -b add,maximized_vert,maximized_horz
取消窗口最大化:
wmctrl -ir -b remove,maximized_vert,maximized_horz
笔记
-
默认情况下,
xdotool
和wmctrl
都不在您的系统上:sudo apt-get install xdotool wmctrl
-
要在当前活动窗口上运行任何命令:
-
对于
wmctrl
命令,删除-i
选项,将
替换为:ACTIVE:
-
for
xdotool
命令:用$(xdotool getactivewindow)
替换$(xdotool getactivewindow)
-
-
在许多情况下,可以使用窗口ID或窗口名称来运行命令。
wmctrl
的-i
选项告诉wmctrl
使用窗口id。 我建议不要使用窗口的名称作为标识符,以防止名称冲突。 它比您期望的更容易发生。 - 根据我自己的经验,在脚本中使用最大化; 使用
wmctrl
来最大化/wmctrl
最大化可能在Unity
和Gnome
上都有点错误,而xdotool
选项在我的经验中运行得更xdotool
。 在大多数脚本中,我最终使用了wmctrl
和xdotool
的混合。
关于man wmctrl和man xdotool的更多信息(主要是节: WINDOW命令 )。
加入Jacob Vlijm的回答:
xdotool windowactivate $minwinid xdotool windowraise $minwinid xdotool windowfocus $minwinid
也适用于最小化窗口。 动画对我来说更快。