ccc 126.36
对文件test中 第一列为aaa的行求和
[linux@test /tmp]$ awk '/aaa/ {sum += $2};END {print sum}' test
370.56
在Shell中,我们可以用awk实现按列求和的功能,非常简单。看下面的例子:1.简单的按列求和[linux@test /tmp]$ cat test123.52125.54126.36[linux@test /tmp]$ awk '{sum += $1};END {print sum}' test375.422.对符合某些条件的行,按列求和[linux@test /tmp]$ cat testaaa 123.52bbb 125.54aaa 123.52aaa 123.5
cat data|
awk
‘{sum+=$1} END {print "Sum = ", sum}’
2、求平均
cat data|
awk
‘{sum+=$1} END {print "Average = ", sum/NR}’
3、求最大值
cat data|
awk
‘BEGIN {max = 0} {if ($1>max) max=$1 fi} END {print “Max=”, max}’
4、求最小值(
执行方法
awk
‘BEGIN{system(“
shell
命令)}’ 就行
[root@CHSHA-CT-WWW-249 ~]#
awk
‘BEGIN{system(“hostname”)}’
CHSHA-CT-WWW-249.360buy.com
[root@...
cat data|
awk
'{sum+=$1} END {print "Sum = ", sum}'
2、求平均
cat data|
awk
'{sum+=$1} END {print "Average = ", sum/NR}'
3、求最大值
cat data|
awk
'BEGIN {max = 0} {if ($1>max) max=$1 fi} END {print...