bur*_*cak 2 awk text-processing statistics arithmetic
我有一个带有数字表的文件;第一行是标题行。我想对每列求和并使用 awk 打印出每列的总和和列名。
我该怎么做?
假设每一行都有相同数量的字段(列):
awk '
NR==1 { for (i=1; i<=NF; i++) header[i]=$i; next; }
{ for (i=1; i<=NF; i++) total[i] += $i; }
END { for (i=1; i<=NF; i++) print header[i] "=" total[i]+0 }
'
Run Code Online (Sandbox Code Playgroud)
样本输入:
red green blue
1 2 4
8 16 32
64 128 256
Run Code Online (Sandbox Code Playgroud)
对应的输出:
red=73
green=146
blue=292
Run Code Online (Sandbox Code Playgroud)