awk统计linux命令大全(求和,求平均,求最大值,求最小

这是格式化输出
如果不加\n换行,会把把结果输出到一行,如下图
paste -d, a.txt b.txt |awk -F"," '{s=$1+$2} {printf "%s+%s=%s,",$1,$2,s}'
1+10=11,2+11=13,3+12=15,4+13=17,5+14=19,6+15=21,7+16=23,8+17=25,9+18=27,10+19=29,
14:05,=15811
14:41,=31969
14:42,=35381
14:42,=27745
14:43,=43512
shell 多行求和,多行求平均值
www.test.com
www.test.com
用shell分析文本,统计文本每一行倒数第三列之和
题目:用shell完成一个文本分析,文本的格式如下,需要统计一下倒数第三列数字之和第一列:aaa,bbb,ccc,ddd,101,102,103,104,105第二列:eee,fff,ggg,hhh,...
shell-awk 按列求和
在Shell中,我们可以用awk实现按列求和的功能,非常简单。看下面的例子:
1.简单的按列求和
[linux@test /tmp]$ cat test
awk实现求和、平均、最大值和最小值的计算操作
0、准备和数据文件
http://www.2cto.com/os/85.html
比如有一个数据文件,只有一列(在之前可以通过各种手段过滤出只有数字这一列),比如操作的响应时间
[shell/awk]按列求和
在Shell中,我们可以用awk实现按列求和的功能,非常简单。看下面的例子:
1.简单的按列求和
[linux@test /tmp]$ cat test
有一个文件 ,为4.txt
对文件中某一列进行数值求和
198 MMSGSUSE11 [wyz] :/home/wyz/perl/testcase&more tmp.txt
testAddCountryCod...
在Shell中,我们可以用awk实现按列求和的功能,非常简单。看下面的例子:
1.简单的按列求和
[linux@test /tmp]$ cat test
linux下awk命令是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在对数据进行分析时显得尤为强大。简单来说,awk命令就是将输出流逐行导入,以空格为默认分隔符将每行切片,再进行...
awk -F '|' '{s[$1] += $2} END{for(i in s) print i, s[i]} }' & test...
没有更多推荐了,让我们来看awk应用的一个例子,其中先对一系列学生的成绩进行相加,然后计算其平均值。下面是输入文件的具体数据:
$ cat grades
john 85 92 78 94 88
andrea 89 90 75 90 86
jasper 84 88 80 92 84
在学生的姓名后面有5个成绩。下面的脚本将给出每个学生的平均成绩:
$ cat grades.awk#求5个成绩的平均值{ total = $2 + $3 + $4 + $5 + $6
avg = total / 5
print $1 , avg }
该脚本将第二到第六个字段相加得到5个成绩的总和。将total的值除以5并结果赋给变量avg。Print语句打印学生的姓名和平均成绩。注意我们可以省咯avg赋值而将计算平均成绩作为print语句的一部分,如下:
print $1 , total / 5
这个程序使我们了解了在awk中编写程序是如此简单。awk将输入解析成字段和记录。你不用去读单独的字符和声明数据类型。awk将自动替你做这些工作。
参考资料:http://www.linuxawk.com/communication/486.html
5-4 统计学生平均成绩与及格人数
5-4 统计学生平均成绩与及格人数
本题要求编写程序,计算学生们的平均成绩,并统计及格(成绩不低于60分)的人数。题目保证输入与输出均在整型范围内。
输入在第一行中给...
输入5个人的6门成绩,分别统计每个人的平均成绩以及每门课程的平均成绩
int input(int a[],int n)
printf(&请输入五个人的六门成绩:\n&);
for(i=0;i5;i++)
7-3 计算平均成绩(15 分)(转载)
给定N个学生的基本信息,包括学号(由5个数字组成的字符串)、姓名(长度小于10的不包含空白字符的非空字符串)和成绩([0,100]区间内的整数),要求计算他们的平均成绩,并顺序输出平均线以下的学生名单...
没有更多推荐了,awk&统计文件中按照某列统计某列的和(sum)
把第一列相同的名称的第二列加起来:
cat add&& | awk
'{a[$1]+=$2}END{for(i in a) printf "%s %d\n",i,a[i]}'
(把含有111的行的第二列加起来等于10)
cat add&& | awk
'{a[$1]+=$2}END{for(i in a) printf "%s %d\n",i,a[i]}' | sort -n -r
cat add&& | awk
'{a[$1]+=$2}END{for(i in a) printf "%s %d\n",i,a[i]}' | sort -n -r
简单的把第二列加起来:
cat add | awk '{a=a+$2}END{print
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。一、分组求和并排序1.存在文件groupsum.txt原始数据如下,对下面的文件根据第四列进行分组,并对1,2,3列进行求和。0.2
4原始数据如上统计为如下这个样子:0.6 0.5 0.8 10.5 0.5 0.5 20.6 0.3 0.8 30.1 0.1 0.1 4实现逻辑:对每一列简历一个数据,数组下标为第四列的值,当出现重复值时对其进行求和;处理完成之后再END中输出。实现方法:awk '{a[$4]+=$1;b[$4]+=$2;c[$4]+=$3}END{for(i in a)print a[i],b[i],c[i],i}' groupsum.txt对上述文件,根据第四列进行分组,并对1,2,3列进行求和,并根据第四列进行倒叙排列。awk '{a[$4]+=$1;b[$4]+=$2;c[$4]+=$3}END{for(i in a)print a[i],b[i],c[i],i}' groupsum.txt |sort -k4nr对上述文件,根据第四列进行分组,并对1,2,3列进行求和,并根据第一列进行倒叙,第二列正序输出。awk '{a[$4]+=$1;b[$4]+=$2;c[$4]+=$3}END{for(i in a)print a[i],b[i],c[i],i}' groupsum.txt |sort -k1nr -k2n二、有如下文件,roleid,serverid分组,取出每个角色最后一次登录时的记录文件last_login 中包含roleid
level四个字段,文件具体内容如下:1001
12awk -F"\t" '{if($3&a[$1$2]) {a[$1$2]=$3;b[$1$2]=$0}}END{for(i in b) print b[i]}' last_login.txt三、分组统计还以last_login.txt 为例,以roleid和serverid分组,统计出现次数。awk -F "\t" '{a[$1][$2]=a[$1][$2]+1}END{for (i in a) {for (j in a[i]) print i,j,a[i][j]}}' last_login.txt四、取最后一行还是以last_login.txt 为例,以roleid和serverid分组,查询每个角色的最后一条记录awk -F "\t" '{if (a[$1][$2] &$3 ||a[$1][$2]=="") a[$1][$2]=$0}END{for (i in a) {for (j in a[i]) print i,j,a[i][j]}}' last_login.txt
awk实现group by功能分组统计条数
log日志初始文件内容如下:'
& 09:23:04&,&ac:c1:ee:3c:f9:63&,&http://www.wangfanwifi.com:16621/api/p...
awk实战——分组统计(允许字符下标)
直接上图:
一、原始数据准备:
文本:array
内容如下图:
二、执行awk命令
代码注释:
按照文本分隔符\t,申明数组变量arrays[],变量下标为$1,数值为$2,按照数组相同下标进...
AWK命令之分组、排序、Top集合
hadoop fs -cat /tmp/hello.txt |awk '{ m[$14]+=1} END{ for (k in m)
print k, m[k]}' |sort -nrk2 |hea...
AWK的初级运用之分组计算功能
AWK分组统计功能很强大,我们以下面的数据做几个实验给大家展示一下效果。...
awk实现求和、平均、最大值和最小值的计算操作
0、准备和数据文件
比如有一个数据文件,只有一列(在之前可以通过各种手段过滤出只有数字这一列),比如操作的响应时间
180.153.114.199 - - [03/Jul/:43 +0800] GET /wp-login.php?redirect_to=http%3A%2F...
比如 有个文件
123 234 345
234 345 567
123 345 789
123 234 567
先按第一列分开...
闲话: Linux 从来没有系统的学过,AWK 这个高端的东西更没有系统全面的学过,知道真正项目中遇到的时候才会想着系统的学习一下,今天先写一下AWK的数组使用,网上有很多这样的文章,但是很多地方都没...
awk '{if( $7 in interfaceMap ){interfaceMap[$7]=interfaceMap[$7]+1;}else{interfaceMap[$7]=1;}}END{fo...
#一、需求
A、B、C代表3个用户,第二列代表各自的得分,求A、B、C的最好成绩以及A、B、C最好成绩的均值A 10
没有更多推荐了,扫一扫体验手机阅读
共142条记录}

我要回帖

更多关于 awk命令 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信