Existe um comando shell para trazer um programa já iniciado no gnome na frente de outro.
ou seja:
Gedit e Nautilus são iniciados. O Nautilus está em segundo plano e o Gedit em primeiro plano.
Como trazer o Nautilus para a frente com um comando shell?
Respostas:
Instale o wmctrl
wmctrl -a <name>
Nota:
fonte
Outra opção é o xdotool :
xdotool search --class Nautilus windowactivate
fonte
XGetWindowProperty[_NET_WM_DESKTOP] failed (code=1)
xwininfo
e emitindo váriosxdotool
comandos adicionais adicionais (dos quais não me lembro mais). Quando tentei automatizar isso (para me livrarxwininfo
), obtive artefatos visuais devido a janelas ocultas que também foram selecionadas. Simplesmente não encontrei uma maneira genérica de abordar janelas arbitrárias corretamente. Depois de mudar parawmctrl -a
tudo, imediatamente funcionou perfeitamente da caixa, sem mais ajustes. Observe que eu gostoxdotool
, mas parece difícil elevar a janela correta com ela.Ao usar
xdotool
, parece difícil exibir todas as janelas de um determinado aplicativo ou classe usando apenas um comando. Acabo tendo melhores resultados envolvendo-o em umfor
loop no nível do shell. Usando o Bash:Poucas observações:
xdotool search
procurará o padrão (aquiFirefox
) no nome da janela, classe e nome da classe. Se você quiser restringir o seu espaço de busca, use as relevantes--class
,--name
ou--classname
opções.--desktop 0
opção limita a pesquisa à primeira área de trabalho. Isso parece ser uma solução alternativa para evitar oXGetWindowProperty[_NET_WM_DESKTOP] failed (code=1)
mencionado em alguns comentários.xdotool
projeto está paralisado desde 2015. Ainda permanece sendo minha ferramenta de escolha. Por motivos pessoais, Jordan Sissel (o autor original) não é tão ativo quanto era, então não hesite em contribuir com o projeto.fonte