コマンドラインで合計、平均などの集計処理 

Linux

コマンドラインで簡単に数字を集約する方法。
SQLのsum()やaverage()をコマンドラインで行います。

平均値を求めてみる

数字の羅列。

% cat sample.txt
1000
34
1
124312
31234
1234
2314
1234
1234
23.33

平均値を求める。

% cat sample.txt | awk  'BEGIN {total=0} {total += $1} END {print total/NR}'
16262

平均コンテンツ容量

Apacheがレスポンスしている平均ページ容量

$ grep ' 200 ' access.log | awk  'BEGIN {total=0} {total += $10} END {print total/NR}' 
15185.5

総合コンテンツ量

Apacheがレスポンスしたページ容量の合計 (単位:GB)

% grep ' 200 ' access.log | awk  'BEGIN {total=0} {total += $10} END {print total/1000000000}' 
1.40969

コメント