Como um marcador
Supondo que você tenha wmctrl instalado (execute sudo apt-get install wmctrl
se não):
O comando:
wmctrl -ia "$(wmctrl -lp | grep "$(pgrep gedit)" | tail -1 | awk '{ print }')"
Aumentaria a última janela gedit
aberta. Substitua por qualquer outra aplicação.
Explicação
pgrep gedit
obtém o pid de gedit
wmctrl -lp
lista todas as janelas e o pid que eles pertencem
awk '{ print }'
divide o id da janela (a primeira string na linha)
$(wmctrl -lp | grep "$(pgrep gedit)" | tail -1 | awk '{ print }')
, portanto, encontra o ID da janela da última janela criada de gedit
(a saída de wmctrl -lp
lista as janelas em uma ordem cronológica de criação, se o aplicativo tiver várias janelas, tail -1
retornará a última) .
wmctrl -ia
subseqüentemente aumenta a janela por seu window-id
Em um pequeno script
... para ser executado com o aplicativo como argumento:
#!/bin/bash
wmctrl -ia "$(wmctrl -lp | grep "$(pgrep "")" | tail -1 | awk '{ print }')"
- Salve-o em um arquivo vazio como
switchto.sh
- Torne-o executável
-
Executar como (por exemplo)
/path/to/switchto.sh firefox
Alternativas?
Teoricamente o comando:
xdotool search --class gedit windowactivate
deve fazer (meio que) o mesmo; ele deve levantar a janela primeiro encontrado de gedit
neste caso.
Parece menos robusto no entanto. No meu sistema (Unity) não fez nada.