• linux命令join、paste


    1、join

    主要是在处理『两个档案当中,有 "相同数据" 癿那一行,才将他加在一起』癿意思。

    格式:join [-ti12] file1 file2

    选项与参数:

       -t :join 默认以空格符分隔数据,幵且比对『第一个字段』的数据, 如果两个档案相同,则将两笔数据联成一行,且第一个字段放在第一个!

       -i :忽略大小写的差异;

      -1 :这个是数字的1 ,代表『第一个档案要用那个字段来分析』的意思;

       -2 :代表『第二个档案要用那个字段来分析』的意思。

    例子:

    cat 1.txt

    1  tom  12  160

    2  jack  18  182

    3  mary  16  168

    cat 2.txt

    tom  50

    jack  75

    mary  45

    命令:join -1 2 -2 1 1.txt 2.txt          

    tom  1  12  160  50

    jack  2  18  182  75

    mary  3  16  168  45

    2、paste

    相对于 join 必须要比对两个档案的数据相关性, paste 就直接『将两行贴在一起,且中间以 [tab] 键隔开』。

    格式:paste [-d] file1 file2

    选项不参数:

       -d :后面可以接分隔字符。预设是以 [tab]来分隔的!

      - :如果 file 部分写成 - ,表示来自 standard input 的资料的意思。

    cat 1.txt

    tom  12

    jack  18

    mary  16

    cat 2.txt

    160

    182

    168

    cat 3.txt

    50

    75

    45

    命令:cat 3.txt |paste 1.txt 2.txt -

    tom  12  160  50

    jack  18  182  75

    mary  16  168  45

  • 相关阅读:
    shell编程系列5--数学运算
    qperf测量网络带宽和延迟
    使用gprof对应用程序做性能评测
    [转]极不和谐的 fork 多线程程序
    Emacs显示光标在哪个函数
    Iterm2的一些好用法
    [转]最佳日志实践
    Deep Introduction to Go Interfaces.
    CGo中传递多维数组给C函数
    seaweedfs 源码笔记(一)
  • 原文地址:https://www.cnblogs.com/xingguang1130/p/9166815.html
Copyright © 2020-2023  润新知