zoukankan      html  css  js  c++  java
  • [shell基础]——join命令

    测试文本内容

    # cat -n name1.txt 
         1	name1 alvin1
         2	name2 alvin2
         3	name3 alvin3
         4	name4 alvin4
    # cat -n name2.txt 
         1	name1 100
         2	name2 101
         3	name3 102
         4	cccccccccccccccc
    

    (1) join

    显示匹配的行,并将值合并(ccc和name4不匹配所以不显示)
    # join name1.txt name2.txt
    name1 alvin1 100
    name2 alvin2 101
    name3 alvin3 102
    


    (2) -a

    用第1个文件的内容去匹配,若匹配则显示匹配的行,并合并其值;不匹配的行也显示,但其值为空
    # join -a1 name1.txt name2.txt
    name1 alvin1 100
    name2 alvin2 101
    name3 alvin3 102
    name4 alvin4
    
    用第2个文件的内容去匹配,若匹配则显示匹配的行,并合并其值;不匹配的行也显示,但其值为空
    # join -a2 name1.txt name2.txt
    name1 alvin1 100
    name2 alvin2 101
    name3 alvin3 102
    cccccccccccccccc
    
    两个文件同时匹配,若匹配则显示匹配的行,并合并其值;同时将所有不匹配的行也都显示出来
    # join -a1 name1.txt -a2 name2.txt
    name1 alvin1 100
    name2 alvin2 101
    name3 alvin3 102
    cccccccccccccccc
    name4 alvin4
    

     
    (3) -o

    对于匹配的行,输出"第1个文件的第2部分,第2个文件的第2部分"的部分,
    # join -o 1.2 2.2 name1.txt name2.txt
    alvin1 100
    alvin2 101
    alvin3 102
    
    # join -o 1.1 2.1 name1.txt name2.txt
    name1 name1
    name2 name2
    name3 name3
    
  • 相关阅读:
    SpringBoot通过注解获取接口信息
    2.2.0Nginx代理与负载均衡
    1.1Nginx概述
    Nginx安装整合
    每日日报27
    PHP所遇问题——注意:未定义的索引
    每日日报26
    每日日报25
    每日日报24
    每日日报23
  • 原文地址:https://www.cnblogs.com/snsdzjlz320/p/5693954.html
Copyright © 2011-2022 走看看