¿Cómo mover ventanas de rango de dimensiones al Espacio de trabajo 2?

¿Cómo mover ventanas de rango de dimensiones al Espacio de trabajo 2?

tengo muchas figuras deanchoXaltura(550-570)x(465-486) ​​en elSur oesteestablecido lógicamente allí por movegui()la función de Matlab. Me gustaría abrir todos esosSur oesteventanas del rango de tamaño en una pantalla externa o en el Espacio de trabajo 2. MeuhEl comando muestra esas dimensiones de la figura.anchoXaltura, sus códigos hexadecimales y títulos donde me gustaría mover ventanas de tamaño 560 x 475 paraanchoXaltura, respectivamente, al espacio de trabajo 2

masi@masi:~$ wmctrl -l -G
0x01c0000b  0 0    0    3840 1080 masi Desktop
0x01e00002  0 0    54   1920 1023 masi Edit - Unix & Linux Stack Exchange - Google Chrome
0x02200006  0 2088 333  1608 501  masi masi@masi: ~
0x0280003d  0 1920 78   1920 1041 masi MATLAB R2016a - academic use
0x02800ac6  0 11   113  568  465  masi Figure 1: data gray all 4
0x02800af2  0 687  113  560  475  masi Figure 2: data gray top half (1/2)
0x02800aff  0 1364 113  560  475  masi Figure 3: data gray top #1 (1/4)
0x02800b16  0 1364 621  560  475  masi Figure 4: Time domain
0x02800b2a  0 11   631  568  465  masi Figure 5: Memory/... Monitoring
0x02800b31  0 683  631  568  465  masi Figure 6: data Size(I) monitoring 
0x02800b3b  0 11   621  560  475  masi Figure 7: Histograms
0x02800b85  0 774  594  386  28   masi Press SPACEBAR to continue

Hacer el comando de meuh proporciona la cantidad correcta de wmctrlcomandos, pero los comandos individuales no tienen ningún efecto (tenga cuidado con los códigos hexadecimales diferentes aquí que los anteriores porque hay diferentes iteraciones)

masi@masi:~$ wmctrl -l -G |
> awk '$0~/^0x/{ winid=$1; width=$5; height=$6;
>                if(width>=550 && width<=570 && height>=465 && height<=485)
>                   printf "wmctrl -i -r %s -t 2\n",winid
>              }' | sh -x
+ wmctrl -i -r 0x03200120 -t 2
+ wmctrl -i -r 0x03200149 -t 2
+ wmctrl -i -r 0x0320015f -t 2
+ wmctrl -i -r 0x03200173 -t 2
+ wmctrl -i -r 0x03200188 -t 2
+ wmctrl -i -r 0x0320019f -t 2
+ wmctrl -i -r 0x032001b2 -t 2

¿Por qué es común + wmctrl -i -r 0x03200120 -t 2poner la ventana al espacio de trabajo 2? ¿Cuál es el símbolo +allí?

  • No hago wmctrl -r 1 -t 2nada, TODO especifica de alguna manera las dimensiones aquí.
  • ¿Cómo se pueden mover ventanas de tamaño 560x475 al Espacio de trabajo 2?
  • ¿Cómo se pueden mover ventanas de tamaño (550-570) x (465-485) al Espacio de trabajo 2?

SO: Debian 8.5 64 bit
Kernel Linux: 4.6 de backports
Matlab: 2016a
Administrador de ventanas: Gnome 3.14
Hardware: Asus Zenbook UX303UA, Asus PC
Otras fuentes: Búsqueda Commandlinefuwmctrlno trae nada relevante

Respuesta1

Puede utilizar un pequeño script awk para filtrar los identificadores de ventana requeridos utilizando el ancho y el alto en las columnas 5 y 6 separadas por espacios:

wmctrl -l -G |
awk '$0~/^0x/{ winid=$1; width=$5; height=$6;
               if(width>=550 && width<=570 && height>=465 && height<=485)
                  printf "wmctrl -i -r %s -t 2\n",winid
             }' | sh

Respuesta2

No existe ninguna solución de trabajo compatible con Gnome 3.14 en Debian 8.5. Esperemos que la próxima versión de Gnome en el primer y segundo trimestre de 2017 ayude en el caso.

información relacionada