前面说过cat命令和paste命令都可以合并文本,今天说另一个合并文本的命令:join。
命令格式:
join [option] file1 file2
如命令所示,join命令后面必须跟两个文件,不能多也不能少。
命令的作用:
这个命令使两个文件按照指定的字段合并到一起,当然前提是该字段两个文件中都存在。不指定字段时,默认会使用第一个文件每一行的第一个字段。
命令参数:
参数 | 说明 |
---|---|
-a | 输出文件中不匹配的行,文件号可以选用1和2,代表第一个和第二个文件 |
-i | 比较字段时忽略大小写 |
-1 <字段> | 以第一个文件的<字段>为基础进行合并 |
-2 <字段> | 以第二个文件的<字段>为基础进行合并 |
命令实例
这里有两个文件:
不加参数:join b.txt a.txt
说明一点:用join合并要求2个文件必须是用sort排序的,否则会有问题。我们这里稍微改一下,然后对比看一下异常:
a文件的次序多一下调整,然后再次join:
这里提示没有sort