我正试图获得一个bash对话框来输出一个数据列表,其中包含——checklist。
我已经定义了清单上的内容:

menuitems="$menuitems $n $item$disksize off\n"

但是如果我在$item和$disksize之间放置一个空格,如下所示:
menuitems="$menuitems $n $item $disksize off\n"

什么都不会发生。我试着输入了一些其他形式的空白和unicode/ASCII码,但没有成功,你有什么建议吗?

最佳答案

问题是,不能区分属于某个项的空格和分隔列表中项的空格。解决方案是使用数组:

menuitems+=( "$n" "$item$disksize" "off" )

dialog ... --checklist "foo" $height $width $listHeight "${menuitems[@]}"

引用数组的扩展将生成一个单词列表,每个单词都被引用以保护数组中单个元素中包含的空格。

关于bash - Bash对话框中的空格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16986766/

10-10 09:50