Odpowiedzi:
wmctrl -l
może być tym, czego szukasz. Program wmctrl może także wykonywać proste czynności w oknach, takie jak przenoszenie ich i ustawianie ich właściwości.
xlsclients
pokazuje działających klientów i xwininfo -root -children
pokazuje wszystkie elementy potomne okna głównego. Obejmuje to również niektóre funkcje renderowane przez menedżera okien lub pulpit.
Oto sposób wyświetlania tylko nazw:
wmctrl -l|awk '{$3=""; $2=""; $1=""; print $0}'
ponieważ wmctrl -l
pokazuje trochę dodatkowych informacji, a nie tylko nazwy wymagane w pytaniu:
lubię to:
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
i filtrując je awk
, otrzymujemy tylko nazwy otwartych okien:
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
Jeśli chcesz po prostu tytułów i żadnych innych informacji (nawet białych znaków), możesz użyć tego:
wmctrl -l | grep -o "$HOSTNAME.*" | sed "s/$HOSTNAME //g"
Wynik:
linux - Jak grep i wymienić - Przepełnienie stosu - Pale Moon Jak mogę użyć zmiennej w sed? | Fora Unix Linux | Programowanie i tworzenie skryptów powłoki - Pale Moon Usuń wszystko po znakach * lub # lub & w pliku tekstowym za pomocą GREP - Stack Overflow - Pale Moon Video.mp4 - VLC Media Player