ログファイルから1時間ごとのデータをカウントする


0

ログファイルから1時間ごとにレコード数を取得したい。サンプルデータは次のとおりです。

001:2017-05-23 00:00:01 002:10.10.10.63
001:2017-05-23 00:00:03 002:10.10.10.63
001:2017-05-23 00:00:05 002:10.10.10.63
001:2017-05-23 00:00:07 002:10.10.10.63
001:2017-05-23 00:00:09 002:10.10.10.63
001:2017-05-23 01:00:12 002:10.10.10.63
001:2017-05-23 01:00:14 002:10.10.10.63

上記からのデータ出力は次のとおりです。

00 = 5
01 = 2

回答:


1
cut -f2 -d' ' logfile
| cut -f1 -d:
| sort
| uniq -c
| sed 's/ *\([0-9]\+\) \([0-9][0-9]\)/\2 = \1/'
| sort
  1. 時間のみを出力します。
  2. 時間のみを抽出します。
  3. 出力を並べ替える-次の行で必要
  4. 各時間の発生をカウントし、出力します count hour
  5. フォーマットを修正
  6. 時間で並べ替え
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.