awkでフィールドの合計値

表題の通り。`awk`を使って、CSVファイルのとあるフィールドの合計値を出す。

■ 環境

  • Linux
  • Mac OSX El Capitan

■ awk

以前のエントリでも使った下記のCSVファイルを使う。

$ cat test.csv
1,aaa,928
2,bbb,232
3,aaa,129
4,ccc,836
10,bbb,444
$

3つ目のフィールドだけ表示するには下記のようにする。

$ awk -F, '{print $3}' test.csv
928
232
129
836
444
$

これの合計を計算させる。

$ awk -F, 'BEGIN {sum=0} {sum+=$3} END {print sum}' test.csv
2569
$

自分がよくやるのでメモ。

以上。