linux - 如何聚合文件或合并

标签 linux r awk

任何人都可以帮助按公共(public)数据(列)合并不同的文件吗?请=(

file1.txt

ID   Kg   Year   
3454  1000  2010
3454  1200  2011
3323  1150  2009
2332  1000  2011
3454  1156  201

file2.txt

ID    Place
3454  A1
3323  A2
2332  A6
5555  A9

file 1+2

ID     Kg   Year Place
3454  1000  2010 A1
3454  1200  2011 A1
3323  1150  2009 A2
2332  1000  2011 A6
3454  1156  2013 A1

所以第二个文件应该连接到第一个。如您所见,文件 2 中的 ID 5555 未使用。

如何在 linux 或 ....

最佳答案

如果您从排序的文件开始,该工具是join。在您的情况下,您可以即时排序。

join <(sort file1.txt) <(sort file2.txt)

标题也将被加入,但不会出现在顶部。管道到 sort -r

关于linux - 如何聚合文件或合并,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31564965/

相关文章:

python - 安装了 python2.7 作为备用,但默认 2.6 的路径已被破坏。默认解释器的系统路径文件?

java - 在 Java 中为非 root 用户绑定(bind) < 1024 的端口

arrays - 如何修复 bash 脚本中的数组错误?

从保管箱中读取 .csv 文件并将其绘制在 Shiny 应用程序的传单 map 上

r - 如何保存存储在 R 列表列中的对象

r - docker中如何将文件复制到每个用户的空间

linux - Perl匿名管道没有输出

perl - grep 变量并给出信息输出

linux - 将两列数据格式化为三列数据

shell - 在awk中,如何在打印$2时忽略错误行,但错误行中不存在$2