以下数据包含每个记录的可变字段数,每行都是单个记录。Awk 脚本将把每行的所有字段加在一起并打印每个记录的结果总和。
rand.csv
1,3,5,8,10,11,54
1,2,3,4
15,18,21,42,37
1,1,1,0,0,3,16
4,1,8,0,4,6,13,16,17,20,8,6,4
13
这就是我迄今为止所写的内容
BEGIN {
FS=","
}
{
sum = 0
for(i=1; i<=NF; i++){
sum+=$i;
}
print "Sum "$1""
}
}
END{
print "Sum of each row"
}
答案1
$ more rand.csv
1,3,5,8,10,11,54
1,2,3,4
15,18,21,42,37
1,1,1,0,0,3,16
4,1,8,0,4,6,13,16,17,20,8,6,4
13
$ awk -F, '{for(i=1;i<=NF;i++)x+=$i;print x;x=0}' rand.csv
92
10
133
22
107
13
基本上我唯一改变的是-F,
在前面并使用命令行。