Contar dados por hora do arquivo de log

0

Eu quero obter a contagem de registros em todas as horas do arquivo de log. aqui estão os dados da amostra;

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

da saída de dados acima deve ser;

00 = 5
01 = 2
UUU
fonte

Respostas:

1
cut -f2 -d' ' logfile
| cut -f1 -d:
| sort
| uniq -c
| sed 's/ *\([0-9]\+\) \([0-9][0-9]\)/\2 = \1/'
| sort
  1. só produz o tempo.
  2. apenas extrai as horas.
  3. ordenar a saída - necessária pela seguinte linha
  4. conta ocorrências de cada hora, saídas count hour
  5. corrige a formatação
  6. classifica por horas
choroba
fonte