+ -
当前位置:首页 → 问答吧 → awk中调用shell变量的问题

awk中调用shell变量的问题

时间:2011-08-18

来源:互联网

在shell中内嵌awk,想在awk中调用shell的变量,普通的变量很容易,但是如果shell里的变量是数组,那么在awk里面该怎么调用呢?
比如如下代码
test.sh

a[0]="1/2/3"
a[1]="4/5/6"
awk '{
  for (i=0;i<2;i++) {
  print "'${a['i']}'"
  }
}'
我想把shell里的数组元素在awk里面打印出来,上述代码不行。
该怎么做呢?

作者: mysword   发布时间: 2011-08-18

  • 对我有用[0]
  • 丢个板砖[0]
  • 引用
  • 举报
  • 管理
  • TOP
#2楼 得分:0回复于:2011-08-18 08:55:13

作者: imeuyniy   发布时间: 2011-08-18

eval "$(awk 'BEGIN{for(i=0;i<2;i++) {x="echo ${a["i"]}";print x}}')"
1/2/3
4/5/6

作者: imeuyniy   发布时间: 2011-08-18