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

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

文件内容如下:

cat tri5a.txt|sed -n 1p

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

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

cat tri5a.txt|sed -n 2p

#打印第二行

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

#总行数12101,总字数5452492

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

进入正题,想法就是利用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

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

同理可求min:

cat tri5a.txt | awk -vmin=10000 '{for(n=2;n<=NF;n++){if(min>$n)min=$n;};print min}'|sort|sed -n 1p
linux查找文件内容中的最大数字 使用ark命令寻找max、min