zoukankan      html  css  js  c++  java
  • awk文本处理--二维数组使用一例

    群友出的题:

    原始文件:

    $ cat file
    BJ30 26
    BJ30 24
    BJ30 63
    BJ30 70
    SH41 21
    SH41 30
    SH41 25
    SH41 25
    SH41 29
    SD15 34
    SD15 46
    SD15 20
    SD15 34
    TJ20 23
    TJ20 32
    TJ20 31
    TJ20 35

    处理后结果:

    BJ30 SH41 SD15 TJ20
    26     21     34     23
    24     30     46     32
    63     25     20     31
    70     25     34     35
            29

    代码如下:

    awk '{if(!a[$1]++)b[++n]=$1;c[$1,a[$1]]=$2;if(m<a[$1])m=a[$1]}END{for(i=0;i++<n;)s=s?s"	"b[i]:b[i];print s;s="";for(i=0;i++<m;){for(j=0;j++<n;){printf c[b[j],i]?c[b[j],i]"	":"	"}print ""}}' file
  • 相关阅读:
    MOXA串口服务器使用
    【笔记】Winform设置快捷键
    comboBox联动
    【笔记】winform窗体显示
    关于xml文件的使用
    day_6
    day_5
    dau_4
    day_3
    day_2
  • 原文地址:https://www.cnblogs.com/Eivll0m/p/4564938.html
Copyright © 2011-2022 走看看