Как я могу удалить последние N строк файла? - PullRequest
3 голосов
/ 06 декабря 2008

Может кто-нибудь дать несколько советов, как удалить последние n строк из файла в Perl? У меня очень большой файл размером около 400 МБ, и я хочу удалить из него около 125 000 последних строк.

Ответы [ 11 ]

0 голосов
/ 06 декабря 2008

Наиболее эффективным способом было бы поискать конец файла, затем постепенно читать сегменты, подсчитывая количество новых строк в каждом, а затем использовать truncate (см. Perldoc -f truncate) для его обрезки. На CPAN также есть модуль или два для чтения файла в обратном направлении.

...