信息发布→ 登录 注册 退出

linux合并文件中相同行是什么-join命令使用与实例

发布时间:2025-07-18

点击量:

Linux join命令

Linux join命令用于合并两个文件中指定列内容相同的行,并将这些行连接输出。

该命令会查找两个文件中指定列内容一致的行,进行合并后输出到标准输出。

语法

join [-i][-a][-e][-o][-t][-v][-1][-2][--help][--version][文件1][文件2]

参数说明

  • -a 显示原本输出内容的同时,也显示未匹配到相同列的行。
  • -e 若在[文件1]和[文件2]中没有找到匹配的列,则用指定字符串填充输出。
  • -i或--igore-case 忽略大小写进行比较。
  • -o 按照指定格式输出结果。
  • -t 设置列的分隔符。
  • -v 和-a功能一样,但仅输出未匹配到的行。
  • -1 指定连接[文件1]中的某一列。
  • -2 指定连接[文件2]中的某一列。
  • --help 显示帮助信息。
  • --version 显示命令版本。

实例

合并两个文件的内容。

为更好理解join命令,先通过cat命令查看testfile_1和testfile_2的内容。

然后以默认方式比较这两个文件,将具有相同字段的行连接起来。输入如下命令:

join testfile_1 testfile_2 

首先查看testfile_1、testfile_2 文件内容:

$ cat testfile_1 #testfile_1内容  
Hello 95 #第一列为姓名,第二列为金额  
Linux 85  
test 30  
cmd@hdd-desktop:~$ cat testfile_2 #testfile_2内容  
Hello 2005 #第一列为姓名,第二列为年份  
Linux 2009  
test 2006 

执行join命令合并两个文件,输出如下:

$ join testfile_1 testfile_2 #合并testfile_1与testfile_2  
Hello 95 2005  
Linux 85 2009  
test 30 2006 

注意:文件顺序会影响输出结果。若交换两个文件的位置,即执行以下命令:

join testfile_2 testfile_1

输出结果将变为:

$ join testfile_2 testfile_1 #交换文件顺序进行合并  
Hello 2005 95  
Linux 2009 85  
test 2006 30 
标签:# linux  # linux命令  # 字符串  # 这两个  # 并将  # 没有找到  # 则用  # 分隔符  # strong  # ul  # li  # cat  # igore  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!