Re: bash парсинг лога
Сергей Болонкин
sb на altbox.ru
Пт Фев 25 10:11:49 UTC 2011
Всё правильно. Как и было поставлено условие:
"...Т.е. нужно получить список юзеров за каждый день, без повторений и пустых
юзеров (-)...."
25 февраля 2011 г. 13:07 пользователь Тарас Перебейносов
<taras.perebeynosov на gmail.com> написал:
> Это всего лишь избавляет от пользователей "-". Дубликаты - один и тот же
> пользователь в течении дня, а не в ту же секунду. Т.е. нужно сначала
> отрезать от даты время, оставив только "25/Feb/2011", потом для каждой даты
> убрать дубликаты юзеров.
>
> Думаю без цикла не обойтись. Для начало хотелось бы реализовать это:
>
> file="dirname/filename"
>
> grep -v ';-$' | while read string
> do
> date=`echo $string | <как то получаем только 25/Feb/2011>`
> ....
> done
>
> Как мне из строки "[25/Feb/2011:11:42:57 +0300];X_HudsonAccesToSVN" получить
> только дату в формате "25/Feb/2011"?
>
> 25 февраля 2011 г. 12:27 пользователь Сергей Болонкин <sb на altbox.ru>
> написал:
>>
>> Прошу прощения, не убрал дубликаты :)
>>
>> cat [dirname/filename]|grep -v ';-$'|sort -u
>>
>> 25 февраля 2011 г. 12:24 пользователь Сергей Болонкин <sb на altbox.ru>
>> написал:
>> > Как быстрый вариант:
>> > cat [dirname/filename]|grep -v ';-$'
>> >
>> > 25 февраля 2011 г. 11:47 пользователь Тарас Перебейносов
>> > <taras.perebeynosov на gmail.com> написал:
>> >> Доброго времени суток!
>> >>
>> >> Нужна помощь в написании скрипта, который будет парсить очень большой
>> >> лог (>
>> >> 300 Mb)
>> >>
>> >> Лог выглядит так:
>> >>
>> >> [25/Feb/2011:11:42:57 +0300];X_HudsonAccesToSVN
>> >> [25/Feb/2011:11:42:57 +0300];X_HudsonAccesToSVN
>> >> [25/Feb/2011:11:42:57 +0300];X_HudsonAccesToSVN
>> >> [25/Feb/2011:11:42:57 +0300];X_HudsonAccesToSVN
>> >> [25/Feb/2011:11:42:58 +0300];-
>> >> [25/Feb/2011:11:43:08 +0300];-
>> >> [25/Feb/2011:11:43:08 +0300];-
>> >> [25/Feb/2011:11:43:09 +0300];-
>> >> [25/Feb/2011:11:43:09 +0300];Trofimov
>> >> [25/Feb/2011:11:43:19 +0300];-
>> >>
>> >> На выходе нужно получить файл, в котором будет содержаться:
>> >> 25/Feb/2011;X_HudsonAccesToSVN
>> >> 25/Feb/2011;Trofimov
>> >>
>> >> Т.е. нужно получить список юзеров за каждый день, без повторений и
>> >> пустых
>> >> юзеров (-).
>> >> Лог реально большой, и это тоже надо учесть.
>> >>
>> >> Я пока только начинаю писать скрипты на bash, пока не особо умею
>> >> пользоваться awk и иже с ними, поэтому буду благодарен любым советам и
>> >> подсказкам
>> >>
>> >
>> >
>> > --
>> > ____________________________
>> > С уважением, Сергей Болонкин
>> >
>>
>>
>>
>> --
>> ____________________________
>> С уважением, Сергей Болонкин
>> --
>> ubuntu-ru mailing list
>> ubuntu-ru на lists.ubuntu.com
>> https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
>
>
> --
> ubuntu-ru mailing list
> ubuntu-ru на lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-ru
>
>
--
____________________________
С уважением, Сергей Болонкин
Подробная информация о списке рассылки ubuntu-ru