Кошка моей подруги гуляла на моем ноутбуке, и я ее не заметил. Когда я повернулся, чтобы проверить, я вижу, что у меня есть 32 вкладки «Менеджер архивов». Как я могу закрыть их все мгновенно, как будто используя Alt+ F4на всех сразу.
11
kill cat
действие, которое я собирался предложить.killall file-roller
: DДругой подход - использовать
wmctrl
утилиту (элемент управления Window Manager). Это может быть использовано, чтобы сообщить оконному менеджеру, что вы притворяетесь, что нажали кнопку закрытия. Это позволяет избежать потенциально сурового характераkillall
; например, некоторые программы с несохраненным документом сразу же завершают свою работу после их уничтожения (даже осторожно), а при нажатии кнопки закрытия появляется сообщение «Хотите сохранить?» незамедлительный.Основная команда
wmctrl -c WINDOWTITLE
, так что в этом случаеwmctrl -c "Archive Manager"
(при условии, что у нее нет открытого файла: это меняет заголовок). К сожалению, он закрывается только по одному, поэтому нам нужно сделать больше, чтобы закрыть все из них.wmctrl
возвращает успех, если находит совпадение, поэтому мы можем зацикливаться, пока он не завершится неудачей:При этом всегда выбирается первое найденное окно, поэтому нам нужно немного поспать, чтобы избежать непрерывной отправки потока команд закрытия в первое окно, которое уже занято закрытием - это может вызвать ошибку, которая останавливает цикл.
Это просто и обычно работает, но спать определенное количество времени и надеяться, что окно закрывается, прежде чем мы попробуем снова, - грязный и медленный способ избежать ошибки. Что мы действительно хотим сделать, так это немедленно отправить одно закрытое сообщение в каждое соответствующее окно.
Мы можем найти все открытые окна с
wmctrl -l
. В этом списке указан числовой идентификатор окна, который мы можем использовать для индивидуальной идентификации каждого окна, даже если все они имеют одинаковый заголовок. Затем нам нужно отфильтровать только соответствующие окна (grep
команда), извлечь только идентификатор окна (cut
команда) и вызватьwmctrl -i -c
каждое из них.-i
Необходимо , чтобы соответствовать идентификатор окна вместо заголовка окна.Немного сложнее просто вводить текст, когда кошка наступает на клавиатуру, но, надеюсь, это полезная техника для хранения в вашем наборе сценариев.
источник
Вы можете использовать сочетание клавиш Ctrl+, Qкоторое закроет все открытые окна диспетчера архивов.
Ctrl+ QЯрлык часто встречается на Ubuntu (и много других распределений, а). Он работает так же с большинством приложений, которые я использовал до сих пор. То есть он закроет все окна работающего приложения.
источник
Ctrl+Q
самом деле это делает. В то время какQuit
меню закрывало все открытые окна диспетчера архивов, сочетание клавиш не делало то же самое (по крайней мере, в 14.04).