2014-01-09 47 views
-1

我有几个变量(变量的数量是动态的),CSV格式如下: -设置优先级

var1,var2,var3... 

我需要在以下方式中的变量优先

priority,variable 
1,var1 
2,var2 
3,var3 
...... 

然后使用[IF语句]

比较变量的优先级那么,我该如何为每个变量添加优先级/权重?

+2

而你quesition是......? – Matthias

+0

@Matthias,Thnx提醒..这些天我迷路了很多! – Marcos

+0

优先级与名称中的数字相同,还是优先级取决于csv文件中的顺序? –

回答

1

在读取文件的行时,使用IFSread -a将值读入数组中。然后,它很容易迭代数组并根据索引分配优先级。

echo "priority,variable" 

while IFS=, read -a vars; do 
    for idx in "${!vars[@]}"; do 
     echo "$((idx+1)),${vars[idx]}" 
    done 
done << END 
a,b,c,d,e,f 
END 
priority,variable 
1,a 
2,b 
3,c 
4,d 
5,e 
6,f 
+0

感谢您的回答。我使用array解决了这个问题,并且不必使用任何优先级 – Marcos