file1
1464816373904413 abcde 12345 1.1.1.1
1464816373904413 abcde 12345 2.2.2.2
file2
1464816373904413 AAA VfJUEMi
1464816373904413 BBB QzKYGKi
1464816373904413 CCC eHLOjIi
要求处理之后:
1464816373904413 abcde 12345 1.1.1.1 AAA VfJUEMi BBB QzKYGKi CCC eHLOjIi
1464816373904413 abcde 12345 2.2.2.2 AAA VfJUEMi BBB QzKYGKi CCC eHLOjIi
处理方法:
awk ‘NR==FNR{a[$1]=a[$1]” ”$2” ”$3;next}{if(a[$1])print $0,a[$1]}’ file2 file1
解释:
首先当NR==FNR的时候处理的是file2文件,然后进行数组的赋值,赋值之后,当NR!=FNR的时候,处理的文件变为了第二个文件。如果a[$1]存在,进行输出。