Sort associative array with AWK

后端 未结 6 1489
逝去的感伤
逝去的感伤 2020-12-29 08:31

Here\'s my array (gawk script) :

myArray[\"peter\"] = 32
myArray[\"bob\"] = 5
myArray[\"john\"] = 463
myArray[\"jack\"] = 11

After sort, I

6条回答
  •  刺人心
    刺人心 (楼主)
    2020-12-29 08:33

    Use asorti:

    #!/usr/bin/env -S gawk -f
    {
        score[$1] = $0;
        array[sprintf("%3s",$2) $1] = $1;
    }
    
    END {
        asorti(array, b)
        for(i in b)
        {
            name = array[b[i]]
            print score[name]
        }
    }
    

提交回复
热议问题