Подтвердить что ты не робот

X11: переместить существующее окно через командную строку?

Учитывая идентификатор окна X-клиента, есть ли способ переместить это окно или изменить его геометрию из командной строки?

$ xlsclients -a
Window 0x3000001:
  Machine:  ohm
  Name:  Terminal
  Icon Name:  foo
  Command:  foo
  Instance/Class:  foo/bar

$ xmovewindow -id 0x3000001 --geometry +100+200  <-- this is what I would like to do
4b9b3361

Ответ 1

Я думаю, xdotool выполнит эту работу.

xdotool позволяет вам программно (или вручную) имитировать работу с клавиатурой и мышью, перемещать и изменять размер окон и т.д. Это делается с использованием расширения X11 XTEST и других функций Xlib.

например.

$ xdotool windowfocus 0x1a00ad2

будет фокусировать окно с id 0x1a00ad2. Также есть команда windowmove, которая, вероятно, является той, которую вы ищете.

wmctrl является более продвинутым. Он совместим с менеджерами окон EWMH/NetWM X, поскольку вы можете читать на их веб-сайт. Я не думаю, что вам нужно, чтобы он был совместим с ними.