tail -f на STDIN перлового скрипта., bingo2, 18-Апр-07, 21:26 [смотреть все]привет. есть программа, которая как не странно пишет лог :) есть перловый скрипт, который его парсит.задача: получать последние строки из лога по ssh login@server "tail -f" и передавать на STDIN перловому скрипту. что посоветуете? через простой пайп не работает, sleep очень не хочется ставить. пока поставил перенаправление в файл, а уже оттуда беру, но это не вариант =( |
- tail -f на STDIN перлового скрипта., bill, 21:59 , 18-Апр-07 (1)
>привет. >есть программа, которая как не странно пишет лог :) >есть перловый скрипт, который его парсит. > >задача: >получать последние строки из лога по >ssh login@server "tail -f" и передавать на STDIN перловому скрипту. > >что посоветуете? через простой пайп не работает, sleep очень не хочется ставить. > >пока поставил перенаправление в файл, а уже оттуда беру, но это не >вариант =( open (TAIL,"ssh login\@server tail -f |"); while (<TAIL>) { ...
или так? while(<>) { ... ssh login@server tail -f | ./prog.pl
- tail -f на STDIN перлового скрипта., bingo2, 12:13 , 19-Апр-07 (2)
>>привет. >>есть программа, которая как не странно пишет лог :) >>есть перловый скрипт, который его парсит. >> >>задача: >>получать последние строки из лога по >>ssh login@server "tail -f" и передавать на STDIN перловому скрипту. >> >>что посоветуете? через простой пайп не работает, sleep очень не хочется ставить. >> >>пока поставил перенаправление в файл, а уже оттуда беру, но это не >>вариант =( > > >open (TAIL,"ssh login\@server tail -f |"); >while (<TAIL>) { >... > >или так? >while(<>) { >... > >ssh login@server tail -f | ./prog.pl не работает не так, не так =( win/cygwin
- tail -f на STDIN перлового скрипта., chip, 16:07 , 19-Апр-07 (3)
>привет. >есть программа, которая как не странно пишет лог :) >есть перловый скрипт, который его парсит. > >задача: >получать последние строки из лога по >ssh login@server "tail -f" и передавать на STDIN перловому скрипту. > >что посоветуете? через простой пайп не работает, sleep очень не хочется ставить. > >пока поставил перенаправление в файл, а уже оттуда беру, но это не >вариант =( use File::Tail; http://search.cpan.org/~mgrabnar/File-Tail-0.99.3/Tail.pm
- tail -f на STDIN перлового скрипта., bingo2, 12:11 , 20-Апр-07 (4)
>>привет. >>есть программа, которая как не странно пишет лог :) >>есть перловый скрипт, который его парсит. >> >>задача: >>получать последние строки из лога по >>ssh login@server "tail -f" и передавать на STDIN перловому скрипту. >> >>что посоветуете? через простой пайп не работает, sleep очень не хочется ставить. >> >>пока поставил перенаправление в файл, а уже оттуда беру, но это не >>вариант =( > >use File::Tail; >http://search.cpan.org/~mgrabnar/File-Tail-0.99.3/Tail.pm спасибо. буду знать... попытался разобраться с модулем - но с оптимальными параметрами проблемы (задал все интрервалы=0|1 - всё равно задержки вывода порядка 10 секунд)... нашёл решение на одном форуме use IO::File; use strict; my $tail = new IO::File; $tail->open("<operations.log"); while(1){ my @lines=$tail->getlines(); if(0==scalar(@lines)){ sleep 1; }else{ my $line; foreach $line(@lines){ chomp $line; print "$line\n"; } } }
|