如何创建一个新文件,将两个单独文件中具有相同开头信息但不同行数的列合并起来
例如:
文件 1:
*row* *col* *A*
1 0 23
1 1 34
1 2 34
文件 2:
*row* *col* *B*
1 0 100
1 2 110
合并文件:
*row* *col* *A* *B*
1 0 23 100
1 1 34
1 2 34 110
答案1
使用 Awk:
$ awk 'NR==FNR {b[$1 $2] = $3; next} {$0 = $0 "\t" b[$1 $2]} 1' File2 File1
*row* *col* *A* *B*
1 0 23 100
1 1 34
1 2 34 110
*B*
(请注意,这将在 中没有相应值的位置放置一个空的制表符分隔字段File2
。)