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排序,以免一些对比的项目被略过