我有一个包含以空格分隔的字符串的变量:
line="1 1.50 string"
我想用空格作为分隔符来拆分该字符串,并将结果存储在数组中,以便执行以下操作:
echo ${arr[0]}
echo ${arr[1]}
echo ${arr[2]}
输出
1
1.50
string
我在某个地方找到了行不通的解决方案:
arr=$(echo ${line})
如果在此之后运行上面的echo语句,则会得到:
1 1.50 string
[empty line]
[empty line]
我也试过
IFS=" "
arr=$(echo ${line})
具有相同的结果。有人可以帮忙吗?
set -f; arr=($string); set +f
似乎比快read -r -a <<< $string
。