Xfce имеет рабочих мест/рабочих столов . Compiz, однако, имеет окон просмотра вместо рабочих мест/рабочих столов . Существует только один рабочий стол, размер которого увеличивается по мере добавления новых рабочих столов.
Xfce переключает рабочие столы, а compiz перемещает окна просмотра. В compiz части окна могут быть видны на двух гранях куба, в то время как в xfce окно всегда видно только в «своей» рабочей области (липких окон в стороне ).
Вы можете запросить количество рабочих столов с помощьюwmctrl -d
:
В xfce с четырьмя рабочими столами это дает вам:
0 * DG: 1920x1080 VP: 0,0 WA: 0,0 1920x1032 Workspace 1
1 - DG: 1920x1080 VP: N/A WA: 0,0 1920x1032 Workspace 2
2 - DG: 1920x1080 VP: N/A WA: 0,0 1920x1032 Workspace 3
3 - DG: 1920x1080 VP: N/A WA: 0,0 1920x1032 Workspace 4
Это говорит о том, что
0,0
При переходе на второй рабочий стол активный рабочий стол меняется:
0 - DG: 1920x1080 VP: N/A WA: 0,0 1920x1032 Workspace 1
1 * DG: 1920x1080 VP: 0,0 WA: 0,0 1920x1032 Workspace 2
2 - DG: 1920x1080 VP: N/A WA: 0,0 1920x1032 Workspace 3
3 - DG: 1920x1080 VP: N/A WA: 0,0 1920x1032 Workspace 4
Однако после запуска compiz вы получите
0 * DG: 7680x1080 VP: 0,0 WA: 0,0 1920x1032 Workspace 1
Это говорит о том, что
0,0
, т.е. крайний левый При повороте ко второй грани куба окно просмотра -положение меняет свою координату x -, в то время как все остальное остается неизменным:
0 * DG: 7680x1080 VP: 1920,0 WA: 0,0 1920x1032 Workspace 1
При запуске compiz количество рабочих столов устанавливается равным 1. При запущенных демонах xfconf это изменение распространяется на xfconf и сбрасывает счетчик рабочего пространства xfce _на 1.
Я не знаю, можно ли что-нибудь с этим поделать, но обычно это не большая проблема. Меня это беспокоило только потому, что я использую xfdesktop для рисования значков и хотел иметь разные обои для каждой грани куба. Я настроил xfce соответствующим образом, но внутри compiz я установил обои первого рабочего стола на всех гранях куба.
Я не знаю, почему ваш список окон не работает. Мой также (правильно )перечисляет все окна на одном рабочем столе, но выбор окна работает нормально и вращает куб, если окно находится на другой грани куба.Он работает как со средним -окном -списка xfdesktop, так и с пунктом меню окна панели xfce4 -.
Сделайте что-нибудь подобное. Этот один вкладыш -создает массив для всех .txt
файлов в папке /root/tmpdir
:
[root@localhost ~]# export LIST=() ; for file in `find /root/tmpdir -name *.txt -exec readlink -e '{}' \;` ; do LIST+=($file) ; done
[root@localhost ~]# echo ${LIST[*]}
/root/tmpdir/newdir/file.txt /root/tmpdir/file.txt
[root@localhost ~]#
Или вы можете просто создать переменную, содержащую имена файлов, разделенные,
:
[root@localhost ~]# export LIST; for file in `find /root/tmpdir -name *.txt -exec readlink -e '{}' \;` ; do LIST=$LIST$file, ; done
[root@localhost ~]# echo $LIST
/root/tmpdir/newdir/file.txt,/root/tmpdir/file.txt,
П.С.
Оба примера ищут расширение файла .txt
, а не содержимое. Кроме того, этот поиск является рекурсивным, вы можете изменить аргументы, чтобы он выполнял поиск только в одной папке.
Если вам нужны имена, вам, вероятно, лучше всего присвоить их массиву.
names=( *.txt )
Если вам нужно содержимое, то
contents="$( cat *.txt )"