AWK-匹配前3个字段,打印$6&$7从同一行的两个文件中删除

AWK-匹配前3个字段,打印$6&$7从同一行的两个文件中删除,awk,Awk,我的两个输入文件已更改,我需要匹配两个文件的前三个字段。匹配完成后,我想打印文件1的$1(其中有匹配的)和$6和$7,以及文件2的$6和$7。原始代码是一个AWK单行程序,只匹配第一个字段 File1 BSTN-SANJ BSTN SANJ 0 0 50 105910 MRFD-SANJ MRFD SANJ 0 0 40 69105 NYRK-SANJ NYRK SANJ 0 0 30 905010 SANJ-HMRD

我的两个输入文件已更改,我需要匹配两个文件的前三个字段。匹配完成后,我想打印文件1的$1(其中有匹配的)和$6和$7,以及文件2的$6和$7。原始代码是一个AWK单行程序,只匹配第一个字段

File1

BSTN-SANJ   BSTN    SANJ    0   0   50  105910
MRFD-SANJ   MRFD    SANJ    0   0   40  69105
NYRK-SANJ   NYRK    SANJ    0   0   30  905010
SANJ-HMRD   SANJ    HMRD    0   0   25  69010
SANJ-NRFK   SANJ    NRFK    0   0   38  61506
文件2

BSTN-SANJ   BSTN    SANJ    0   0   45  601251
MRFD-SANJ   MRFD    SANJ    0   0   39  919591
NYRK-SANJ   NYRK    SANJ    0   0   25  690155
输出

BSTN-SANJ   50  105910  45  601251  
MRFD-SANJ   40  69105   39  919591  
NYRK-SANJ   30  905010  25  690155  
这就行了

awk -v OFS='\t' '
    {key = $1 OFS $2 OFS $3} 
    NR == FNR {f2[key] = $6 OFS $7; next} 
    key in f2 {print $1, $6, $7, f2[key]}
' file2 file1
请在Q的正文中包含您的原始“AWK one liner to match just the first field.”(不是作为评论回复!)。祝你好运。