|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : RockMover 2:5020/400 20 Jan 2001 03:35:22 To : Oleg Alexeenkov Subject : Re: BIG file ;) --------------------------------------------------------------------------------
Привет!
Oleg Alexeenkov wrote:
> Привет'Ик All!
>
> Дано: Большой текстовый файл (лог) (~50MB)
> Хочется: Вывести последние nдцать строк , например 10
> Hамекните пожалуйста , как правильно , а дальше я сам пойму ;)
> (сам процесс чтения именно последних строк , а не всего файла)
Увы, perl тут никакого чуда не сотворит (или у тебя ОС с типизированными
файлами? но я сомневаюсь, что такие остались).
Поэтому читаешь sysread'ом примерно килобайт от конца файла, разбиваешь
его на строки split'ом по \n, выводишь нужное количество от конца. Если
получилось меньше 10 (или сколько тебе нужно), подчитываешь еще килобайтик
перед первым; я думаю, идея понятна.
[...]
WBR, RockMover
I am The Master of Flame...
--- ifmail v.2.15dev5
* Origin: Azeroth delenda est! (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/167956d1e65fa.html, оценка из 5, голосов 10
|