读取“拖尾”一个巨大的> 300GBgzip 文本文件的结尾

问题描述

我有一个文本文件,它最初的大小 >300GB,经过 gzip 压缩后它仍然有 >10GB。 (这是一个数据库导出,运行了几天,然后被中止,我想知道最后一个导出条目的时间戳,以便我可以恢复导出。)

我对这个文本文件的最后几行感兴趣,最好不必解压缩整个 300GB(甚至到内存中)。此文件不再增长,因此我不需要跟踪更改或附加数据,也就是 tail -f

有没有办法只压缩文件的最后一部分?

tail --bytes=10000000 /mnt/myfile.db.gz | gunzip - |less

不起作用(它返回 stdin: not in gzip format)。由于 gzip 不仅可以压缩文件,还可以压缩数据流,因此应该可以在文件中的某处搜索开始解压缩的入口点,而无需读取文件头。对吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)