Страница 1 из 1

awk grep регулярные выражения

Добавлено: 2012-06-27 18:01:22
Пользователь
имеем файл со строчками вида
бла-бла-бла 404 бла-бла-бла-лаб
бла-бла-бла 501 бла-бла-бла-лаб
бла-бла-бла 404 бла-бла-бла-лаб
бла-бла-бла 404 бла-бла-бла-лаб

с помощью регэкспа выделяем код ошибки, подсчитываем количество возникновения каждой из них.
пока:
404 - 3
501 - 1
вероятность возникновения 501 = 1/4, 404 -- 3/4
т.е.
404 - 0.75
510 - 0.25
как это реализовать?
после чего по полученным данным нужно еще построить гистограмму из гнуплот..

Re: awk grep регулярные выражения

Добавлено: 2012-06-27 22:35:38
kpp
Например так:

Код: Выделить всё

export LC_NUMERIC="POSIX"

awk 'BEGIN {
            count_404=0
            count_501=0
           }
          {
           if ( $0 ~ /404/ ) count_404+=1;
           if ( $0 ~ /501/ ) count_501+=1;
          }
          END {
               summ=count_404+count_501;
               print "404 - "count_404/summ"\n501 - "count_501/summ
              }' filename_with_bla_bla_bla


Re: awk grep регулярные выражения

Добавлено: 2012-06-28 20:19:50
Пользователь
спасибо большое