join 命令类似于 paste,它会往文件中添加列,但是它使用了独特的方法来完成。一个 join 操作通常与关系型数据库有关联,在关系型数据库中来自多个享有共同关键域的表格的数据结合起来,得到一个期望的结果。这个 join 命令执行相同的操作,它把来自于多个基于共享关键域的文件的数据结合起来。
通俗地说,就是将两个文件中指定栏位相同的行连接起来,即按照两个文件中共同拥有的某一列,将对应的行拼接成一行。
命令格式
join [选项] 文件 1 文件 2
常用参数
参数 描述
-j FIELD 等同于 -1 FIELD -2 FIELD,-j 指定一个域作为匹配字段
-1 FIELD 以 file1 中 FIELD 字段进行匹配
-2 FIELD 以 file2 中 FIELD 字段进行匹配
-t 自定义分隔符,默认为制表符
例一:将两个文件中的第一个字段作为匹配字段,连接两个文件,可以使用如下命令:
join a.txt b.txt
例二:指定两个文件的第三个字段为匹配字段,连接两个文件,可以使用如下命令:
join -1 3 -2 3 c.txt d.txt