Как закрыть только одно окно приложения?
Я знаю, что если я получу sid через:
ps -ax | grep firefox
и использовать:
kill -9 "sid"
Я закрою все окна программы.
Как закрыть только одно окно приложения, запущенного через терминал?
1 ответ
Вероятно, самый простой вариант использует wmctrl -c
, Возможно, вам придется сначала установить его:
~$ sudo apt-get install wmctrl
затем, чтобы закрыть окно с именем "example" (независимо от того, к какому приложению оно относится), используйте команду:
~$ wmctrl -c "example"
Больше вариантов
Тем не менее, есть много других вариантов, чтобы закрыть конкретное окно, в зависимости от вашего "угла падения".
Несколько примеров:
Чтобы закрыть определенное окно, нажав на него:
~$ wmctrl -c :SELECT: [then click on the window to be closed]
Чтобы закрыть конкретное окно по его числовому идентификатору:
~$ wmctrl -ic <numeric_id>
Чтобы закрыть активное окно:
~$ wmctrl -c :ACTIVE:
Чтобы использовать pid для получения списка окон, принадлежащих конкретному приложению (например, gedit):
~$ pidof gedit 22576 ~$ wmctrl -l -p | grep 22576 0x04600085 0 22576 jacob-System-Product-Name get.sh (~/Bureaublad) - gedit 0x0461aee4 0 22576 jacob-System-Product-Name verhaal (~/Bureaublad) - gedit 0x0461b0a1 0 22576 jacob-System-Product-Name *Niet-opgeslagen document 1 - gedit
затем закройте конкретное окно
get.sh
либо:wmctrl -c get.sh
или же:
wmctrl -ic 0x04600085
Если вы знаете только часть названия окна, например, есть окно;
monkey eats banana.txt
вы знаете, это имеетbanana
во имясначала выведите окно вперед:
wmctrl -a banana
затем решите, хотите ли вы закрыть окно (например, как активное окно)
Вариантов много, см. также man wmctrl. человек wmctrl