+ -
当前位置:首页 → 问答吧 → 把一个变量的值作为数组遍历

把一个变量的值作为数组遍历

时间:2011-06-27

来源:互联网

bash如何把一个变量的值作为数组名对其遍历??

作者: J_O_H_N   发布时间: 2011-06-27

回复 J_O_H_N
  1. arr1=(1 2 3)
  2. var=arr1
  3. eval echo \${$var[@]}
  4. 1 2 3
复制代码

作者: yinyuemi   发布时间: 2011-06-27

回复 J_O_H_N


  变量值是什么?

作者: wtuter   发布时间: 2011-06-27

一个数组A存放(数组1 数组2 数组3)
如何遍历数组1 数组2 数组3

作者: J_O_H_N   发布时间: 2011-06-27

回复 yinyuemi


    一个数组A存放(数组1 数组2 数组3)
    如何遍历数组1 数组2 数组3

作者: J_O_H_N   发布时间: 2011-06-27

回复 J_O_H_N
  1. for ((i=0;i<${#A[@]};i++))
  2. do
  3. var=${A[$i]}
  4. eval echo \${$var[@]}
  5. done
复制代码

作者: yinyuemi   发布时间: 2011-06-27



QUOTE:
回复  J_O_H_N
yinyuemi 发表于 2011-06-27 14:20




    如何把eval改成循环对每个值进行操作?

作者: J_O_H_N   发布时间: 2011-06-27

回复 J_O_H_N
  1. for ((i=0;i<${#A[@]};i++))
  2. do
  3.    var=${A[$i]}
  4.    for ((j=1;j<`eval echo '$'{#$var[@]}`;j++))
  5.    do
  6.        eval echo \${$var[$j]}
  7.    done
  8. done
复制代码

作者: yinyuemi   发布时间: 2011-06-27

回复 yinyuemi


    搞定了,非常感谢:)

作者: J_O_H_N   发布时间: 2011-06-27