文件查看与文本处理-join

文件查看与文本处理-join 📄 — 关联文件(类似 SQL JOIN)

作用

join 基于共有字段将两个已排序文件的行关联合并,类似数据库的内部连接操作。

语法

1
join [选项] 文件1 文件2

用法

join 以第一个字段(默认)为连接键,匹配两文件中键值相同的行并合并。-1 N 指定文件 1 的第 N 字段为连接键,-2 N 指定文件 2 的第 N 字段。-o 字段列表 自定义输出字段。文件必须按连接键排序。-a 1 左连接(保留文件 1 所有行),-v 2 显示文件 2 未匹配的行。

常用参数

参数 说明
-1 N 文件 1 以第 N 字段为连接键
-2 N 文件 2 以第 N 字段为连接键
-t 分隔符 指定字段分隔符
-o 格式 自定义输出字段
-a N 显示文件 N 的全部行(外连接)
-e 字符串 缺失字段替换值
-i 忽略大小写

示例

1
2
3
4
join FILE1 FILE2                    # 按第一字段关联合并
join -t: -1 3 -2 1 FILE1 FILE2 # 以冒号分隔,file1 字段3=file2 字段1
join -a 1 -e "NULL" FILE1 FILE2 # 左连接,缺失填 NULL
join -o 1.1,2.2 FILE1 FILE2 # 只输出 file1.字段1 和 file2.字段2

来源:菜鸟教程