Ottieni un elenco di finestre aperte in Linux


24

ps ax mostra tutti i processi in esecuzione. Voglio fare qualcosa di simile, ma invece dei nomi dei processi effettivi, voglio invece elencare i nomi delle finestre. Quale comando Linux farà questo?

Risposte:



18

xlsclientsmostra i client in esecuzione e xwininfo -root -childrenmostra tutti i figli della finestra principale. Ciò include anche alcune cose renderizzate dal tuo gestore di finestre o dal desktop.


Questo è l'output di wmctrl -l e altro ancora.
Smile4ever,

4

Ecco il modo di mostrare solo i nomi:

wmctrl -l|awk '{$3=""; $2=""; $1=""; print $0}'

perché wmctrl -lmostra alcune informazioni extra anziché solo i nomi richiesti nella domanda:

come questo:

0x020002c6  0 ruslan-Latitude-E6410 fromscratch
0x04600007  0 ruslan-Latitude-E6410 Psensor - Temperature Monitor
0x01600007  0 ruslan-Latitude-E6410 Top Expanded Edge Panel
0x01600017  0 ruslan-Latitude-E6410 Bottom Expanded Edge Panel
0x0200000a -1 ruslan-Latitude-E6410 Desktop
0x05a0000c  0 ruslan-Latitude-E6410 ruslan@ruslan-Latitude-E6410: /var/lib/apt
0x05600085  0 ruslan-Latitude-E6410 index.html (~/Dropbox/cpucraft.com/fromscratch) - gedit

e filtrandolo per awkotteniamo solo nomi di finestre aperte:

   fromscratch
   Psensor - Temperature Monitor
   Top Expanded Edge Panel
   Bottom Expanded Edge Panel
   Desktop
   ruslan@ruslan-Latitude-E6410: /var/lib/apt
   index.html (~/Dropbox/cpucraft.com/fromscratch) - gedit
   ubuntu - Get a list of open windows in Linux - Super User - Mozilla Firefox
   cpucraft@cpucraft.com - FileZilla

2

Se vuoi semplicemente i titoli e nessuna altra informazione (nemmeno gli spazi bianchi), puoi usare questo:

wmctrl -l | grep -o "$HOSTNAME.*" | sed "s/$HOSTNAME //g"

Risultato:

Linux - Come grep e sostituire - StackTranslate.it - ​​Pale Moon
Come posso usare una variabile in sed? | Forum Unix Linux | Shell Programming and Scripting - Pale Moon
Elimina tutto dopo i caratteri * o # o & nel file di testo con GREP - StackTranslate.it - ​​Pale Moon
Video.mp4 - VLC Media Player
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.