URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 7073
[ Назад ]

Исходное сообщение
"Работа со строками"

Отправлено L0n3R4ng3r , 26-Дек-07 16:42 
Доброго времени суток

Подскажите пожалуйста как можно сделать счетчик на количество ворнингов, проблема в том что файл за день заполняеться на пару гиг и таких файлов больше 10 простое:
grep :W: log
занимает очень много времени, а статистику по количеству надо снимать каждые пять минут? Какой метод самый быстрый? Что лучше использовать?


Содержание

Сообщения в этом обсуждении
"Работа со строками"
Отправлено maxsvet , 26-Дек-07 17:21 
>Доброго времени суток
>
>Подскажите пожалуйста как можно сделать счетчик на количество ворнингов, проблема в том
>что файл за день заполняеться на пару гиг и таких файлов
>больше 10 простое:
>grep :W: log
>занимает очень много времени, а статистику по количеству надо снимать каждые пять
>минут? Какой метод самый быстрый? Что лучше использовать?

cat Файл | grep -c warning


"Работа со строками"
Отправлено L0n3R4ng3r , 28-Дек-07 15:16 
>>Доброго времени суток
>>
>>Подскажите пожалуйста как можно сделать счетчик на количество ворнингов, проблема в том
>>что файл за день заполняеться на пару гиг и таких файлов
>>больше 10 простое:
>>grep :W: log
>>занимает очень много времени, а статистику по количеству надо снимать каждые пять
>>минут? Какой метод самый быстрый? Что лучше использовать?
>
>cat Файл | grep -c warning

иногда лудше молчать...


"Работа со строками"
Отправлено andy , 27-Дек-07 08:48 
tail -f Файл | grep xxx

?


"Работа со строками"
Отправлено L0n3R4ng3r , 28-Дек-07 15:21 
>tail -f Файл | grep xxx
>
>?

да но надо посчитать и сбить счетчики....
Решил сделать, через
tail -f file1 | grep "regexp" file2

а потом через крон */5

wc -l file2 && echo > file2


"Работа со строками"
Отправлено andreik , 28-Дек-07 16:56 
Вот неплохое решение:
awk 'BEGIN {count=0} {/строка поиска/ && count++} END {print count; system("echo -n > "FILENAME)}' имя_файла_для_разбора

Эта строка system("echo -n > "FILENAME) - обнуляет файл. Если не нужно - уберите.