即时解压缩和压缩为另一种格式

decompress and compress to another format on the fly

我有一个很大的 gzip 文件,我需要将其更改为 bzip2。

很明显的方法是1)在内存中解压文件,2)写入磁盘,3)再次读取文件压缩成bzip2并写入磁盘。

现在想知道是否可以避开中间阶段(写入磁盘),在内存中进行解压和压缩,然后将最终结果写入磁盘?

您可以解压缩到 stdout,然后 pipebzip2,像这样应该可以工作:

gunzip -c file.gz | bzip2 > file.bz2