我想在出错时继续提取 tar 文件,即使 tar 文件中包含一个或多个损坏的文件。这可能吗?
我有一个 tar 文件myArchive.tar.gz。我想提取/恢复它,所以我运行:
tar -xvf myArchive.tar.gz
该过程提取文件直到某个点,提前退出,我收到此错误:
gzip: stdin: 文件意外结束
tar: 归档文件中出现意外的 EOF
tar: 归档文件中出现意外的 EOF
tar: 错误不可恢复:立即退出
我也尝试了这个命令并得到了同样的错误:
tar --ignore-failed-read -xvf myArchive.tar.gz
我假设此存档中有一个文件已损坏(但是,也许此错误消息意味着其他内容?)。
我看见这个堆栈交换帖子但没有一个答案说明是否可以在错误时继续。答案似乎集中在如何文件可能已损坏,而不是回答是否可以继续错误地提取 tar 文件。
答案1
unexpected EOF
不是“可持续的”。 EOF 代表“文件结束”。您的文件已被截断。没有更多数据可供读取。你无法从中恢复过来。
这就像读一本有人抄袭后半部分的书。您会惊讶地在一章的中间到达本书的结尾。但没有办法继续看书。
您必须去原来的书店购买另一本未损坏的书。