Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Программное обеспечение > Программа для фильтрации текста


Автор: Lazin 9.11.2007, 15:03
В общем возникла такая задача, нужно анализировать лог файлы, большого размера, которые содержат в основном всякий мусор. Из многомегабайтного файла меня может интересовать максимум строк 20-30, содержащих определенные слова, прикинул, что программа должна быть примерно такой:
    - программа не должна целиком грузить файл в память (например Lister из TotalCommander)
    - должен быть качественно реализован поиск ключевых слов, например мну нужно отыскать все строки в которых встречается слово error, тот-же Lister ищет слова по одному вхождению, но желательно, чтобы сразу отображался результат, тоесть я открываю файл, а там видно(уж не знаю как) что в этом файле это слово встретилось 5 раз, и видно где и в каком порядке.
    - не помешала бы возможность сохранять набор ключевых слов между запусками программы
    - подсветка ключевых слов, или еще какой нибудь способ быстрого перемещения между ключевыми словами. В идеале программа должна показывать только строки содержащие одно из ключевых слов заданных мной, например error, connect и тд.
заранее спасибо

Добавлено через 23 секунды
зы
желательно фришная

Автор: Samotnik 9.11.2007, 16:20
Lazin,  Мот  http://www.download.ru/soft/e/office_suites__tools/35_4 подойдет

Автор: nickless 9.11.2007, 19:30
http://www.gnu.org/software/grep/ нужное_слово лог_файл.log smile 

Поддерживает фильтрацию по регулярным выражениям, настройки отлично сохраняются в шелл-скрипте, найденые строки подсвечиваются цветом, опен сурс smile 
Ну или скриптовый язык вроде perl, правда его немного знать надо. smile 

Под винду наверно входит в cygwin или как там его... под линукс есть везде.

Автор: Lazin 9.11.2007, 20:45
Samotnik, nickless, спасибо greep - то что мне нужно)))

Автор: SergeCpp 21.11.2007, 10:12
http://ru.wikipedia.org/wiki/AWK подходит ещё более очень user posted image
(на авторов, на авторов там посмотрите! user posted image)

Также посмотрите http://ru.wikipedia.org/wiki/Sed

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)