The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"обработка логов"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"обработка логов"  
Сообщение от nel email(??) on 31-Окт-07, 14:59 
Доброго времени суток.
Задача. Есть лог файл, который постоянно пополняется. При появлении в строке слова SEND необходимо выдернуть эту строку и выполнить над ней скрипт.
Конструкция:
tail -f /home/nelubin/071031.log | grep SEND
выводит на экран нужные строки
Хотелось такой строкой
tail -f /home/nelubin/071031.log | grep SEND >> /home/nelubin/123
записать вывод в файл, но этого не происходит. Что здесь не так?
Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "обработка логов"  
Сообщение от angra (ok) on 31-Окт-07, 15:31 
Скорее всего дело в буфферизации для неинтерактивного(stdoutput перенаправлен) запуска. А зачем вам писать в файл? Попробуйте просто читать вывод tail -f /home/nelubin/071031.log | grep SEND в while. Можно еще попробовать set -v, может поможет
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "обработка логов"  
Сообщение от nel email(??) on 31-Окт-07, 16:30 
>Попробуйте просто читать вывод tail -f /home/nelubin/071031.log |
>grep SEND в while.

СПАСИБО, то, что надо.

>Скорее всего дело в буфферизации для неинтерактивного(stdoutput перенаправлен) запуска.

Если не сложно, то где можно узнать подробнее?

>А зачем вам писать в файл?

Это уже не актуально.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "обработка логов"  
Сообщение от angra (ok) on 01-Ноя-07, 06:50 
>Если не сложно, то где можно узнать подробнее?

хз, есди своими словами то когда вывод идет на экран, то он обычно не буфферизуется. То есть пришла строка - вылюнули на экран. Когда же вывод идет в файл, то для сокращения количества обращений к файлу сначала накапливается определённый объем и только потом сбрасывается в файл. В результате у вас с какого-то момента данные в файле стали бы появлятся, но кусками фиксированного(в байтах) размера, что означало бы порезанные строки.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру