我想知道是否有更熟悉yad (又一次对话)的人知道动态列表是否可行,如果是的话,如何使用bash数组的内容将FALSE分配给每个列表项?
我有一个管理多个LUKS分区的脚本,因此当用户选择挂载一个分区时,他们会收到一个尚未挂载的分区列表,以便进行下一个选择。因此,其结果是,他们不能选择一个安装点已经挂载。
目前,这是通过在终端中向用户显示列表来管理的,但是如果可以使用动态列表,我想尝试使用yad列表对话框。
从详细介绍yad在线使用的页面中,我找不到任何关于动态列表的信息,这让我相信这是不可能的。
发布于 2014-08-07 19:52:48
从zenity示例这里中可以看出:
devsToMnt=$(for f in "${part_list_array[@]}" ; do echo FALSE ; echo "$f" ; done | yad --list --center --height="400" --checklist --column="Select" --column="Device to mount:" --print-column="2" --multiple --separator=" ")用户选择的任何分区在$devsToMnt中都是可用的。
发布于 2014-08-07 18:26:31
根据在维基上的例子,我假设
mounts=( "foo" "bar" "baz" )
mp=$(yad --width 300 --entry --title "Mount?" \
--button="Mount it." \
--text "Choose mountpoint:" \
--entry-text \
"${mounts[@]}")
echo "let's mount $mp"应该行得通。
https://stackoverflow.com/questions/25189420
复制相似问题