Linux:join命令详解

本文介绍如何使用Linux下的join命令处理两个文件之间的数据,通过整合相同字段的数据行,实现数据的有效合并。文章提供了详细的语法说明及实例,展示了如何将/etc/passwd和/etc/shadow文件的第一字段相同的数据整合成一行。

join

处理两个文件之间的数据,并且将两个文件中有相同的数据的那一行加在一起

 

语法

join(选项)(file1 file2)

 

选项

-a<1或2>:除了显示原来的输出内容之外,还显示指令文件中没有相同栏位的行;

-e<字符串>:若[文件1]与[文件2]中找不到指定的栏位,则在输出中填入选项中的字符串;

-i或--ignore-case:比较栏位内容时,忽略大小写的差异;

-o<格式>:按照指定的格式来显示结果;

-t<字符>:使用栏位的分割字符;

-v<1或2>:更-a相同,但是只显示文件中没有相同栏位的行;

-1<栏位>:连接[文件1]指定的栏位;

-2<栏位>:连接[文件2]指定的栏位。

 

参数

file1:要进行合并操作的第1个文件参数;

file2:要进行合并操作的第2个文件参数。

实例

将/etc/passwd和 /etc/shadow第一字段相同整合成一行

join -t ':' /etc/passwd /etc/shadow
结果:
bin:x:1:1:bin:/bin:/sbin/nologin:*:15980:0:99999:7:::
daemon:x:2:2:daemon:/sbin:/sbin/nologin:*:15980:0:99999:7:::
adm:x:3:4:adm:/var/adm:/sbin/nologin:*:15980:0:99999:7:::
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin:*:15980:0:99999:7:::

 

PS

在使用join前,应先sort排序,以免一些对比的项目被略过

 

转载于:https://www.cnblogs.com/Spiro-K/p/6361942.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值