我的shell脚本中有函数返回一个字符串数组。数组中的每个elem可以包含嵌入的空格。我需要回显/传递这个结果(字符串数组),以便消费者将其评估为数组而不考虑字符串中嵌入的空格
像这样的东西
function get_prop
{
prop=$(prop_command $1 $2)
eval "prop_array=($prop)"
echo "${prop_array[@]}"
}
props="$(get_prop arg1 arg2)"
for p in $props; do
do something
done
以上在elem嵌入空格的情况下不起作用,因为在消费者端它将被视为两个元素。
值得一提的是,如果存在,我的prop_command会在个别元素中反映嵌入空格。
例如,如果我的字符串数组有两个元素" a b"和" c d"
echo $prop
a\ b c\ d
处理这类特殊情况的其他可行方法有哪些