Esiste un comando shell per portare un programma già avviato in gnome davanti a un altro.
vale a dire:
Vengono avviati Gedit e Nautilus. Nautilus è sullo sfondo e Gedit in primo piano.
Come portare Nautilus in primo piano con un comando shell?
Esiste un comando shell per portare un programma già avviato in gnome davanti a un altro.
vale a dire:
Vengono avviati Gedit e Nautilus. Nautilus è sullo sfondo e Gedit in primo piano.
Come portare Nautilus in primo piano con un comando shell?
Risposte:
Nota:
Un'altra opzione è xdotool :
xdotool search --class Nautilus windowactivate
XGetWindowProperty[_NET_WM_DESKTOP] failed (code=1)
xwininfoe lanciando diversi xdotoolcomandi aggiuntivi (che non ricordo più). Quando ho cercato di automatizzare ciò (per sbarazzarmi di xwininfo) ho avuto artefatti visivi a causa di finestre altrimenti nascoste che sono state selezionate anche. Ho semplicemente trovato un modo generico per affrontare correttamente finestre arbitrarie. Dopo essere passati a wmctrl -atutto immediatamente ha funzionato perfettamente e senza ulteriori modifiche. Si noti che mi piace xdotool, ma sembra difficile alzare solo la finestra corretta con essa.
Quando si utilizza xdotool, sembra difficile portare in primo piano tutte le finestre per una determinata applicazione o classe utilizzando un solo comando. Finisco per avere risultati migliori avvolgendolo in afor ciclo a livello di shell. Usando Bash:
for WINDOW in $(xdotool search --desktop 0 Firefox); do
xdotool windowactivate ${WINDOW}
done
Alcune osservazioni:
xdotool searchcercherà il modello (qui Firefox) in nome finestra, classe e nome classe. Se si desidera limitare lo spazio di ricerca, utilizzare l'appropriato--class , --nameo --classnameopzioni.--desktop 0 opzione limita la ricerca al primo desktop. Questa sembra essere una soluzione alternativa per evitare quanto XGetWindowProperty[_NET_WM_DESKTOP] failed (code=1)menzionato in alcuni commenti.xdotoolprogetto è bloccato dal 2015. Rimane comunque il mio strumento preferito. Per motivi personali, Jordan Sissel (l'autore originale) non è attivo come lui, quindi non esitate a contribuire al progetto.