Linux命令:合并两个tar.gz文件

4
我有一个tar.gz文件,分成两个文件,例如x.tar.gz.00和x.tar.gz.01。如何在Linux中合并这两个tar文件?
我尝试了下面的命令,但没有成功。
zcat X.tar.gz.00 X.tar.gz.01 | gzip -c > X.tar.gz. 

它返回了

gzip: X.tar.gz.00: unexpected end of file

感谢您的选择。

1
取决于它是如何分割的。如果它是由tar或gzip本身分割的,您是否尝试过仅解压第一个文件,看看它是否会自动继续处理第二个文件? - keshlam
1个回答

8
如果您在压缩文件后拆分文件,正如错误提示所示,那么只需直接连接这些文件即可:
cat X.tar.gz.00 X.tar.gz.01 > X.tar.gz

我猜那是唯一的解决方案,但我讨厌将 4 个 5 Gbyte 的文件连接起来,只是为了找出里面的内容。至少我可以确认这对于 Orange Pi one plus 的 Android 存档有效。 - Albert van der Horst
完成此操作后,tar -tf 不会显示已合并的 tar 文件中的文件。 - alper
@alper 你确定你是分割了一个单一的tar文件而不是创建了两个独立的tar文件吗? - Barmar
啊,我试图合并两个独立的tar文件,这就是为什么它没有工作的原因。 - alper
@filippo 什么行为?据我所知,tar没有任何内置的拆分或连接功能。 - Barmar
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接