焦油:简短阅读

Mer*_*cer 8 linux command-line tar

当我解压缩我的tar.

我这样做:

tar xvf VM_DECOMPTES.tar
Run Code Online (Sandbox Code Playgroud)

一段时间后,我收到以下错误:

tar: short read
Run Code Online (Sandbox Code Playgroud)

这里出了什么问题?

tar:无法识别的选项 `--version' BusyBox v1.9.1-VMware-visor-klnext-2965 (2010-04-19 12:53:48 PDT) 多调用二进制

msw*_*msw 6

我怀疑您的 tarfile 已损坏或被截断。

tarfile标头包含一个size包含文件长度的字段。¹ 如果实际文件比标头所说的短,则 tar 将尝试读取文件系统末尾的文件并返回比它短的读取预期,从而生成您看到的消息。

¹ 此功能可追溯到 tar 主要用于磁带存档时,您只能通过读取来了解“文件”的长度,直到您在磁带上遇到 EOF 标记为止。保留它是为了向后兼容,并且还提供了一个很好的(如果有点便宜)检查头文件和文件的一致性。