linux查找文件内容中的最大数字 使用ark命令寻找max、min

    科技2025-11-04  14

    目标文件很大,人工找寻最大值极其困难,可以借助ark完成

    文件内容如下:

    cat tri5a.txt|sed -n 1p

    #打印第一行,每行第一个域是标签,其余全是数字

    cat tri5a.txt|sed -n 2p

    #打印第二行

    #总行数12101,总字数5452492

    进入正题,想法就是利用ark遍历每行求得局部max(行),将得到的结果按从大到小排序(去除重复),再取第一个作为全局max

    cat tri5a.txt | awk -vmax=0 '{for(n=2;n<=NF;n++){if(max<$n)max=$n;};print max}'|sort -u -r|sed -n 1p

    同理可求min:

    cat tri5a.txt | awk -vmin=10000 '{for(n=2;n<=NF;n++){if(min>$n)min=$n;};print min}'|sort|sed -n 1p

    Processed: 0.009, SQL: 8