join
两个文件中指定栏位内容相同的行连接起来
补充说明
join命令 用来将两个文件中,制定栏位内容相同的行连接起来。找出两个文件中,指定栏位内容相同的行,并加以合并,再输出到标准输出设备。
语法
1join(选项)(参数)
选项
1-a<1或2>:除了显示原来的输出内容之外,还显示指令文件中没有相同栏位的行;
2-e<字符串>:若[文件1]与[文件2]中找不到指定的栏位,则在输出中填入选项中的字符串;
3-i或--ignore-case:比较栏位内容时,忽略大小写的差异;
4-o<格式>:按照指定的格式来显示结果;
5-t<字符>:使用栏位的分割字符;
6-v<1或2>:更-a相同,但是只显示文件中没有相同栏位的行;
7-1<栏位>:连接[文件1]指定的栏位;
8-2<栏位>:连接[文件2]指定的栏位。
参数
- 文件1:要进行合并操作的第1个文件参数;
- 文件2:要进行合并操作的第2个文件参数。
常见用法
把两个文件制定栏位内容相同的行连接起来:
1[root@localhost ~]# cat name
21 xiaoming
32 xiaowang
43 xiaoliu
5[root@localhost ~]# cat city
61 beijing beijing
72 hubei wuhan
83 hunan changsha
9
10# city文件在后,则拼接在后,如果city文件在前,则name文件拼接在后。
11[root@localhost ~]# join name city
121 xiaoming beijing beijing
132 xiaowang hubei wuhan
143 xiaoliu hunan changsha
把两个文件指定列拼接起来:
1# 把name文件的第2列和city文件的第3列拼接起来
2[root@localhost ~]# join -o 1.2 2.3 name city
3xiaoming beijing
4xiaowang wuhan
5xiaoliu changsha
来源:https://github.com/jaywcjlove/linux-command
最后修改于: Wednesday, January 31, 2024
版权申明:
- 未标注来源的内容全部为原创,未经授权请勿转载(因转载后排版往往错乱、内容不可控、无法持续更新等);
- 非营利为目的,演绎本博客任何内容,请以'原文出处'或者'参考链接'等方式给出本站相关网页地址(方便读者)。