join命令-连接两个具有匹配字段的文件
时间:2019-04-29 03:17:27 来源:igfitidea点击:
使用join命令将具有匹配字段的两个文件连接在一起。
LINUX连接命令
join命令 - Linux连接命令示例
join
命令用于联接到公共字段上的文件。join命令的基本语法如下:
连接两个文件的示例。
已创建两个文件,分别为file1和file2。我们将基于第一个字段将两个文件连接在一起。
john@sles01:~/john_split> cat file1 1 Chelsea 2 Liverpool 3 Manchester United 4 Newcastle United 5 West Bromwich Albion john@sles01:~/john_split> cat file2 1 Stamford Bridge 2 Anfield 3 Old Trafford 4 St James Park 5 The Hawthorns john@sles01:~/john_split> join file1 file2 1 Chelsea Stamford Bridge 2 Liverpool Anfield 3 Manchester United Old Trafford 4 Newcastle United St James Park 5 West Bromwich Albion The Hawthorns
从上面的输出中,我们可以看到这两个文件是根据第一个字段连接在一起的。
验证文件具有匹配的字段
要验证两个文件都具有匹配的字段条目,我们可以运行join --checker-order
选项:
john@sles01:~/john_split> join --check-order file1 file2 1 Chelsea Stamford Bridge 2 Liverpool Anfield 3 Manchester United Old Trafford 4 Newcastle United St James Park 5 West Bromwich Albion The Hawthorns
由于两个文件的第一个参数都匹配,因此我们不会收到任何错误。如果我们按照以下内容修改file1的内容,现在应该从--check-order
选项中看到一个错误:
john@sles01:~/john_split> cat file1 1 Chelsea 2 Liverpool 3 Manchester United 5 Newcastle United 4 West Bromwich Albion john@sles01:~/john_split> cat file2 1 Stamford Bridge 2 Anfield 3 Old Trafford 4 St James Park 5 The Hawthorns john@sles01:~/john_split> join --check-order file1 file2 1 Chelsea Stamford Bridge 2 Liverpool Anfield 3 Manchester United Old Trafford join: file 1 is not in sorted order
我们还可以使用-v
选项来检查和仅显示未配对的行:
john@sles01:~/john_split> join -v1 file1 file2 join: file 1 is not in sorted order 4 West Bromwich Albion