Obtenha uma lista de janelas abertas no Linux


24

ps ax mostra todos os processos em execução. Quero fazer algo semelhante, mas, em vez dos nomes dos processos reais, quero que os nomes das janelas sejam listados. Qual comando do Linux fará isso?

Respostas:


35

wmctrl -lpode ser o que você está procurando. O programa wmctrl também pode executar algumas ações simples nas janelas, como movê-las e definir suas propriedades.


18

xlsclientsmostra os clientes em execução e xwininfo -root -childrenmostra todos os filhos da janela raiz. Isso também inclui algumas coisas que o gerenciador de janelas ou a área de trabalho processa.


Esta é a saída wmctrl -l mais um pouco mais.
Smile4ever

4

Aqui está a maneira de mostrar apenas nomes:

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

porque wmctrl -lmostra algumas informações extras, em vez de apenas os nomes necessários na pergunta:

como isso:

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 filtrando, awkobtemos apenas nomes de janelas abertas:

   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 você quiser simplesmente os títulos e nenhuma outra informação (nem mesmo espaço em branco), use:

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

Resultado:

linux - Como grep e substituir - Stack Overflow - Pale Moon
Como posso usar uma variável no sed? | Fóruns do Unix Linux | Programação e script de shell - Pale Moon
Exclua tudo depois dos caracteres * ou # ou & no arquivo de texto com o GREP - Stack Overflow - Pale Moon
Video.mp4 - VLC Media Player
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.