차원 범위의 창을 Workspace 2로 이동하는 방법은 무엇입니까?

차원 범위의 창을 Workspace 2로 이동하는 방법은 무엇입니까?

나는 많은 피규어를 가지고 있다.너비엑스(550-570)x(465-486)에서남서movegui()Matlab의 기능 에 의해 논리적으로 설정됩니다 . 저거 다 열어보고싶다남서외부 디스플레이 또는 작업 공간 2의 크기 범위의 창. 으아의 명령은 해당 그림 치수를 보여줍니다.너비엑스, 560 x 475 크기의 창을 이동하려는 16진수 코드 및 제목너비엑스, 각각 작업공간 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

meuh의 명령을 수행하면 정확한 수의 wmctrl명령이 제공되지만 개별 명령은 아무런 효과가 없습니다. (여기에서는 반복이 다르기 때문에 위와 다른 16진수 코드를 주의하세요)

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

Commond가 + wmctrl -i -r 0x03200120 -t 2창을 Workspace 2에 배치하는 이유는 무엇입니까? 거기 기호는 무엇입니까 +?

  • 나는 아무것도 하지 wmctrl -r 1 -t 2않습니다. TODO는 여기에서 어떻게든 치수를 지정합니다.
  • 560x475 크기의 창을 Workspace 2로 어떻게 이동할 수 있나요?
  • (550-570)x(465-485) 크기의 창을 Workspace 2로 어떻게 이동할 수 있나요?

OS: Debian 8.5 64비트
Linux 커널: 백포트 4.6
Matlab: 2016a
창 관리자: Gnome 3.14
하드웨어: Asus Zenbook UX303UA, Asus PC
기타 소스: Commandlinefu 검색wmctrl관련된 어떤 것도 가져오지 않습니다

답변1

작은 awk 스크립트를 사용하면 공백으로 구분된 열 5와 6의 너비와 높이를 사용하여 필요한 창 ID를 필터링할 수 있습니다.

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

답변2

Debian 8.5에는 Gnome 3.14에 대해 지원되는 작업 솔루션이 없습니다. 2017년 1~2분기에 출시될 Gnome의 다음 릴리스가 이 문제에 도움이 되기를 바랍니다.

관련 정보