来自字符串变量的 zenity 清单



>我正在尝试从一些数组中构建一个 Zenity 清单。我目前的方法是遍历数组,构建一个字符串并将其传递给 Zenity,如下所示:

#!/bin/bash
column0=( "row 0" )
column1=( "row 0" )
column0+=( "row 1" )
column1+=( "row 1")
column0+=( "row 2" )
column1+=( "row 2" )
table=''
for (( i=0; i<${#column0[@]}; i++ ))
do
table="$table TRUE "${column0[$i]}" "${column1[$i]}""
done
echo $table
zenity  --list --checklist --width=600 --height=450 
--column="column 0"  
--column="column 1"  
--column="column 2"  
$table

问题是,这是行不通的,清单都坏了,尽管回声句子产生了正确的字符串。如何将字符串传递给 Zenity 有什么问题吗?

table需要是一个数组,原因与你创建column0数组和column1数组的原因相同:保护作为每个元素一部分的空格。

column0=( "row 0" "row 1" "row 2")
column1=( "row 0" "row 1" "row 2")
table=()  
for (( i=0; i<${#column0[@]}; i++ ))
do
table+=(TRUE "${column0[$i]}" "${column1[$i]}")
done
zenity  --list --checklist --width=600 --height=450 
--column="column 0"  
--column="column 1"  
--column="column 2"  
"${table[@]}"

相关内容

  • 没有找到相关文章

最新更新