awk这句是什么意思?

awk'{for(i=2;i<=NF;i++){a[$1,i]+=$i}b[$1]}END{for(iinb){printf(i);for(j=2;j<=NF;j++){... awk '{for(i=2;i<=NF;i++){a[$1,i]+=$i}b[$1]}END{for(i in b){printf(i);for(j=2;j<=NF;j++){printf " "a[i,j]};print ""}}' a.txt>b.txt 展开
 我来答
cnbubble
2018-05-11 · TA获得超过2607个赞
知道大有可为答主
回答量:1990
采纳率:83%
帮助的人:776万
展开全部
前面的for是对每行进行数据处理,从每行第二列到最后一列数据分别进行分类求和,分类在第一列。
a[i,j] “二维”数组存放每一列每一类的汇总(求和)结果,b[ ]数组存放唯一的类名称【awk中的数组更像是字典对象】
End部分对每一类先打印类名,再依次打印该类别每一列的汇总数据。
一般是处理下面样子的文件,
文件示例:
水果名 销售数量(Kg) 销售金额(元)
苹果 2 4
香蕉 1 3
苹果 3 5.5
香蕉 3 8
苹果 1 2
………………
这样类似的文件,最后会求出 各水果销售量求和和销售金额求和数据。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式