源文件具有:
AAA BBB CCC DDD
XXX ZZZ YYY FFF
代码:
#!/bin/bash
while read line
do
for n in `seq 1 4`
do
vr[$n]=$(echo -e "$line" | awk '{print $'$n'}')
#test
vr[$n]=${vr[$n]}
echo ${vr[$n]}
export ${vr[$n]}
done
done < rst.txt
我必须在循环之外使用这些值。动态增加变量并存储这些值,例如,
data_vr[1]=AAA
data_vr[2]=BBB
data_vr[3]=CCC
data_vr[4]=DDD
and
default_vr[1]=XXX
default_vr[2]=ZZZ
default_vr[3]=YYY
default_vr[4]=FFF
我必须在循环之外使用这些值。提前致谢。
答案1
您必须将 valirable 的值“导入”$n
到awk
环境中。可能类似这样的代码可以帮助您:
vr[$n]=$(echo -e "$line" | awk -F\, -v n=$n '{print $n}')