Существует ли команда оболочки для вывода уже запущенной программы в gnome впереди другой.
Т.е.:
Гедит и Наутилус запущены. Наутилус на заднем плане и Гедит на переднем плане.
Как вывести Наутилуса впереди с помощью команды оболочки?
Другой вариант - xdotool :
xdotool search --class Nautilus windowactivate
Примечание:
При использовании xdotool
кажется трудным вывести на передний план все окна для данного приложения или класса, используя только одну команду. Я добился лучших результатов, заключив его в цикл for
на уровне оболочки.Использование Bash:
for WINDOW in $(xdotool search --desktop 0 Firefox); do
xdotool windowactivate ${WINDOW}
done
Несколько замечаний:
xdotool search
будет искать шаблон (здесь Firefox
) в имени окна, классе и имени класса. Если вы хотите ограничить пространство поиска, используйте соответствующие параметры - class
, - name
или - classname
. - рабочий стол 0
ограничивает поиск первым рабочим столом. Похоже, это обходной путь, позволяющий избежать ошибки XGetWindowProperty [_NET_WM_DESKTOP] (code = 1)
, упомянутой в некоторых комментариях. xdotool
остановлен с 2015 года. Тем не менее, он по-прежнему остается моим любимым инструментом. По личным причинам Джордан Сиссел (первоначальный автор) не так активен, как был, поэтому не стесняйтесь вносить свой вклад в проект.