今度は,時間毎のアクセス数を数えてみます. 次のような内容のプログラムを作ってください. 名前は time.awk にしましょう.
{ split($4, dates, /:/); # 13/Sep/2004:12:00:21 --> 13/Sep/2004, 12, 00, 21 hour = dates[2]; access[hour]++; } END{ for(item in access){ print item "\t" access[item]; } }
このプログラムを実行するときは
awk -f time.awk 24Mar | sort
のようにします.すると,
00 9541 01 7557 02 4689 03 3270 04 1850 05 1162 06 1409 07 1355 08 2460 09 3178 10 4587 11 6426 12 5787 13 6801 14 5427 15 5988 16 6300 17 6479 18 7199 19 5221 20 3638 21 6498 22 6812 23 8464
のように時間毎のアクセス数を表示することができます.
こんどは,あなたの(または友人知人)の時間毎のアクセス数を表示しましょう (今のプログラムは,全体のアクセスを数えるものでした). それには,今のプログラムと以前作ったプログラムと組み合わせます. 例えば g999999 さんのアクセス数を数える場合は次のようになります.
awk -f g999999.awk 24Mar | awk -f time.awk | sort
パイプによるコマンド組み合わせについては, 28.1 フィルタで詳しく述べてありますが, ここでは簡単に,最初に g999999.awk で g999999 さんの行を選んだ後, count.awk で数を数えると考えてください.
27.5.2 アクセス数を数える | 27.5.3 時間毎のアクセス数を数える | 27.5.4 所属毎のアクセス数を数える | ||
2009年度版に向けて現在作業中です.
このページに関してお気づきの点がありましたら
コメント投稿システムまでお願いします.
|
Sun, 20 Feb 2005 03:37:23 JST (1622d) |