【发布时间】:2019-10-25 15:04:18
【问题描述】:
我需要逐行读取文件,每行用“,”分隔,并存储到数组中。
文件源文件。
usl-coop,/root
usl-dev,/bin
脚本。
i=1
while read -r line; do
IFS="," read -ra para_$i <<< $line
echo ${para_$i[@]}
((i++))
done < source_file
预期输出。
para_1[0]=usl-coop
para_1[1]=/root
para_2[0]=usl-dev
para_2[1]=/bin
脚本会输出关于 echo 的错误。
./sofimon.sh: line 21: ${para_$i[@]}: bad substitution
当我一个一个地回显数组时,例如
echo para_1[0]
它表明,变量被存储了。
但我需要将它与内部变量一起使用,就像这样。
${para_$i[1]}
可以这样做吗?
谢谢。
S.
【问题讨论】:
标签: arrays bash variables while-loop