Я хотел бы иметь возможность выбрать любое уже открытое окно и свернуть его из командной строки. Это возможно?
Вы используете xdotool. Обратите внимание, что комбинация клавиш по умолчанию для минимизации активного окна по умолчанию является Ctrl-Alt-0, НО это означает, что цифровая клавиатура равна нулю. Если вы введете обычную нулевую клавишу, которая находится между 9 и -, тогда она не будет работать. (Также не при наборе текста на клавиатуре.
Xdotool знает, что нулевая клавиша цифровой клавиатуры называется «KP_Insert».
Так, чтобы свернуть активное окно, сначала убедитесь, что xdotool установлен, а затем используйте команда:
xdotool key Ctrl + Alt + KP_Insert
(Обратите внимание, что клавиша Alt-F3, упомянутая в другом ответе, не будет работать
для минимизации активного окна
xdotool getactivewindow windowminimize
работает над расширением оболочки gnome3.24, таким как настраиваемый горячий угол, «xdotool windowminimize $ (xdotool getactivewindow)» не будет.
В Kubuntu 12.04 я использую следующую команду, чтобы свернуть активное окно:
xdotool windowminimize $(xdotool getactivewindow)
Я подозреваю, что вы можете заменить $(xdotool getactivewindow)
строкой, идентифицирующей любое окно, которое вам нужно свернуть.
Другой пример xdotool
:
xdotool search --onlyvisible --classname --sync Navigator windowminimize
Этот поиск (и ожидание, благодаря --sync
) для видимого окна навигатора, а затем минимизирует его.
См. xdotool(1)
раздел COMMAND CHAINING
:
xdotool поддерживает запуск нескольких команд за один вызов. Как правило, вы начинаете с команды поиска (см. «Стек окна»), а затем выполняете набор действий с этими результатами.
BLOCKQUOTE>
Вы можете сделать это с помощью WMCtrl . Это инструмент, который позволяет вам управлять оконным менеджером из командной строки. Вы можете найти его в репозиториях.
Он совместим с Metacity и KWin (по умолчанию для Gnome и Kde).
Вы можете использовать эту команду для получения списка открытых в данный момент окон. Это будет включать имя окна:
wmctrl -l
Когда у вас есть имя окна, вы можете использовать эту команду для затенения окна:
wmctrl -r "windowname" -b toggle,shaded
Не думаю, что минимизация поддерживается потому что это не охватывается спецификацией EWMH, но вы можете сделать затенение и максимизацию, чтобы это могло удовлетворить ваши потребности.
Вы можете использовать xdotool
для моделирования события клавиатуры Alt-F3
после фокусировки на окне. Это взлом, но в зависимости от вашей проблемы, этого может быть достаточно.
Вы можете свернуть окно приложения независимо от его текущего состояния, используя wmctrl
следующим образом:
wmctrl -r "application-name" -b add,hidden
Чтобы развернуть:
wmctrl -r "application-name" -b remove,hidden
"имя-приложения"
может быть любой подстрокой в имени приложения. , и нечувствителен к регистру (используйте параметр -F, если это не то, что вам нужно). «скрытый» — слово wmctrl для сведения к минимуму.
Например:
wmctrl -r firefox -b add,hidden
сворачивает первое окно, содержащее строку "firefox" в любой комбинации прописных и строчных букв.
Чтобы увидеть список окон, введите:
wmctrl -l
Комментарий dgo.a выше отлично подходит, если вы просто хотите переключаться между развернутым и свернутым состояниями.