有一个文本,存在以下内容:
A 10 20 30
B 20 40 10
C 3 6 9
现在通过awk实现以下几种结果:
1. 打印每行第一列各列数字之和:
awk '{Total=0;for(i=2;i<=NF;i++) Total+=$i}{printf("%s %d\n", $1,Total)}' file.txt
2. 打印每行第一列后各数字中最大的值:
awk '{for(i=2;i<=NF;i++) max=$i?$i:max;printf("%s %d\n", $1,max)}' test.txt
3. 打印第二列值之和;
awk '{total+=$2} END {print total;}' test.txt
阅读(958) | 评论(0) | 转发(0) |