【发布时间】:2014-10-15 16:30:22
【问题描述】:
我的虚拟 bash 数组是:
myArray=(Ann Becky Diana)
我的虚拟文件如下所示:
Ann 9
Becky 7
Caroline 8
Diana 5
我想从我的虚拟文件中提取/grep 以 myArray 中的项目开头的所有行,结果如下:
Ann 9
Becky 7
Diana 5
我可以使用 for 循环来做到这一点:
for NAME in "${myArray[@]}"; do
awk -v NAME="$NAME" '/^NAME/' dummy.file >> output
done
我的问题
如何在不使用循环的情况下将 bash 数组发送到 awk 并提取想要的信息?是否可以对整个数组进行操作?
我希望可以做类似这样的事情:
awk -v ARRAY="${myArray[*]}" '/^ARRAY/' dummy.file
【问题讨论】: