[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Аналог утилиты tac для сжатого файла



автор, я правильно понимаю. что текстовый файл - это некий очень большой лог, генерируемый в постоянном режиме некой coolprog? по-моему, имеет смысл натравить на него logrotate, конфиги для него пишутся просто, в мане все расписано. настроить его, чтобы при достижении определенного размера (500M, допустим), он жал файл в очередной бэкап. бжкапы нумеруются, можно настроить, сколько штук их хранить, также перед сжатием файла на его месте тут же создается пустой, так что прога ничего не заподозрит. а можно при желании прикрутить к нему скрипт, который будет смотреть содержимое и вытаскивать из него. допустим, даты первой и последней записи, по которым именовать файл вроде coolprog.log_20120125-20120208.gz, чтобы при необходимости легко было найти нужный файл.
по-моему, куда более оптимальный вариант. ибо coolprog может и полгода работать, так фигли хранить устаревшую информацию?


2012-044 16:30 Alexey Pechnikov <pechnikov@mobigroup.ru> wrote:
> Большой файл (больше размера ОЗУ и свободного дискового пространства)
> сжат, например, с помощью gzip или любого другого потокового
> упаковщика. Надо его разжать, причем с реверсом строк "на лету", не
> читая весь файл в память и не сохраняя на диск.
> 
> Понятно, что задача выполнима, вопрос, существует ли стандартное
> решение или надо свою утилиту писать?
> 
> 
> Примечание: конвейер zcat + tac может выполнить операцию, но увы, файл
> в процессе разжимается целиком.
> 


Reply to: