合并两个文本文件中的列

合并两个文本文件中的列

如何创建一个新文件,将两个单独文件中具有相同开头信息但不同行数的列合并起来

例如:

文件 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。)

相关内容