Ya no busques más por otros sitios ya que llegaste al lugar correcto, tenemos la solución que buscas sin complicarte.
Solución:
Hay dos herramientas importantes para manipular ventanas desde cli
; xdotool
y wmctrl
. Ambas herramientas se superponen en funcionalidad, pero los comandos más importantes se refieren a su pregunta:
En una descripción general (sin duda incompleta), enumerando los comandos que uso más:
Cerrar una ventana
wmctrl:
wmctrl -ic
Minimizar una ventana
xdotool:
xdotool windowminimize
Des-minimizar una ventana
wmctrl:
efectivamente la desminimización se realiza mediante:
wmctrl -ia
menciono efectivamenteya que el comando se mueve al escritorio correspondiente, desminimiza y levanta la ventana, pero el comando además hace eso en las ventanas que no están minimizadas.
Maximizar una ventana
xdotool:
xdotool windowsize 100% 100%
wmctrl:
wmctrl -ir -b add,maximized_vert,maximized_horz
Desmaximización de una ventana:
wmctrl -ir -b remove,maximized_vert,maximized_horz
notas
-
Ambas cosas
xdotool
ywmctrl
no están en su sistema por defecto:sudo apt-get install xdotool wmctrl
-
Para ejecutar cualquiera de los comandos en el actual activo ventana:
-
por
wmctrl
comandos, elimine el-i
opción, reemplazar
por:ACTIVE:
-
por
xdotool
comandos: reemplazar
por$(xdotool getactivewindow)
-
-
En muchos casos, los comandos se pueden ejecutar utilizando el identificación de la ventana o la nombre de la ventana. los
-i
opción enwmctrl
dicewmctrl
para usar la identificación de la ventana. yo sugeriría no utilizando el nombre de la ventana como identificador, para evitar conflictos de nombres. Ocurre más fácilmente de lo que cabría esperar. - Desde mi propia experiencia, usando maximizar en un script; Utilizando
wmctrl
maximizar / desmaximizar puede ser un poco defectuoso en ambosUnity
yGnome
mientras que laxdotool
La opción funciona más sólida en mi experiencia. En la mayoría de los scripts, termino usando una combinación de amboswmctrl
yxdotool
.
Más información sobre man wmctrl y man xdotool (principalmente la sección: COMANDOS DE VENTANA).
Agregando a la respuesta de Jacob Vlijm:
xdotool windowactivate $minwinid
xdotool windowraise $minwinid
xdotool windowfocus $minwinid
También funciona para desminimizar una ventana. La animación es más rápida para mí.
Si crees que ha sido útil este post, agradeceríamos que lo compartas con otros desarrolladores así nos ayudas a extender esta información.