在正则表达式中使用awk数组

Vic*_*cky 3 awk

我试图搜索存储在awk数组中的模式"a"从file1读取然后在file2的4rth列中搜索,以下命令工作正常

awk -F" " 'NR==FNR{a[NR]=$1;next}{for (i in a){ if($4 ~ a[i])print $0}}'  file1 file2 
Run Code Online (Sandbox Code Playgroud)

但如果我将命令更改为在if file2的4rth列的开头搜索,如下所示,它不起作用,有什么建议吗?

awk -F" " 'NR==FNR{a[NR]=$1;next}{for (i in a){ if($4 ~ "^a[i]" )print $0}}'  file1 file2 
Run Code Online (Sandbox Code Playgroud)

可以修改第二个命令来搜索file2中4rth列开头的数组元素吗?

Ed *_*ton 7

更改"^a[i]""^"a[i]......