我的 zenity 有问题,我无法锻炼。你们能帮帮我吗?
我有一个 7 行长的 tmp3 文件:
AAA
BBB
...
FFF
GGG
我想通过 zenity 发送这个文件,以便它显示一个清单,可以用我想要的每个组合检查我想要的每一行。
我之前写过:
cat tmp3 | zenity --list \
--column='#' \
--text "Select playlist from the list below" \
--title "Please select one or more playlists" \
--multiple \
--width=300 \
--height=300 \
--checklist \
--column "Select" \
--separator="/ ")
所有这一切都是在 zenity 中创建一个包含所有 7 个 tmp3 文件的单行。那不是我想要的。
我目前是这样写的:
choice=$(zenity --list \
--column "Playlists" FALSE $(cat tmp3) \
--text "Select playlist from the list below" \
--title "Please select one or more playlists" \
--multiple \
--width=300 \
--height=300 \
--checklist \
--column "Select" \
--separator="/ ")
这里发生了一些我不明白的非常奇怪的事情。zenity 中创建了 7 个字段中的 4 个:AAA CCC EEE 和 GGG。但不是其他的。当我设置 -x 进行调试时,我可以看到所有 7 行都通过管道传输到 zenity ......发生了什么事??????
我尝试了另一种解决方案,列出了我当前文件夹中的 7 个子文件夹(恰好与 tmp3 中的行具有完全相同的名称)。发生同样的事情!:
我写了这个:
choice=$(zenity --list \
--column "Playlists" FALSE $(ls -d -1 */) \
--text "Select playlist from the list below" \
--title "Please select one or more playlists" \
--multiple \
--width=300 \
--height=300 \
--checklist \
--column "Select" \
--separator="/ ")
第二种解决方案似乎更容易,但我的技能不是很高。我想了解后一种解决方案以及它为什么这样做。
感谢你们!
编辑:我找到了这个并试图让它按照我的方式工作,但到目前为止没有成功...... http://www.linuxquestions.org/questions/programming-9/reading-lines-to-an-array-and-生成-动态-zenity-list-881421/