test.txt文件内容:
9
11
35
21
42
118


求最大值:

awk 'BEGIN {max = 0} {if ($1+0 > max+0) max=$1} END {print "Max=", max}' test.txt
Max= 118


求最小值:

awk 'BEGIN {min = 65536} {if ($1+0 < min+0) min=$1} END {print "Min=", min}' test.txt
Min= 9


求和:

cat test.txt|awk '{sum+=$1} END {print "Sum= ", sum}'
Sum=  236


求平均值:

cat test.txt|awk '{sum+=$1} END {print "Avg= ", sum/NR}'
Avg=  39.3333


求最大值(错误的求法):
cat test.txt|awk 'BEGIN {max = 0} {if ($1>max) max=$1 fi} END {print "Max=", max}'
Max= 9

求最小值(错误的求法):
cat test.txt|awk 'BEGIN{min = 65536}{if ($1<min) min=$1 fi}END{print "Min=", min}'
Min= 11

求最大值(正确的求法):
cat test.txt|awk 'BEGIN {max = 0} {if ($1+0>max+0) max=$1 fi} END {print "Max=", max}'
Max= 118

求最小值(正确的求法):
cat test.txt|awk 'BEGIN{min = 65536}{if ($1+0<min+0) min=$1 fi}END{print "Min=", min}'
Min= 9




awk默认按照字符串比较的,如果要比较数值,需要先强制类型转换,即 $1+0,转换成整数。


Reference:

          http://xfeng.me/awk-get-max/

          http://www.ahlinux.com/shell/4072.html

          http://www.bkjia.com/LINUXxt/956509.html

GitHub 加速计划 / li / linux-dash
12
2
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 5 年前
5def40a3 Add host customization support for the NodeJS version 5 年前
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐