Unix tar 压缩文件夹无法在 Windows 上打开

Unix tar 压缩文件夹无法在 Windows 上打开

我使用命令tar -cvzf upload.tar upload来压缩我的上传文件夹,但是当我使用 7-Zip 在 Windows 上提取它时,它只显示为一个文件,而不是文件夹。

而且 uplad 文件夹不是符号链接 - 它是真实目录。文件大小正确,但它不是 Windows 上的文件夹

好的 - 找到问题了。由 -z 标志引起。因此运行tar -cvf upload.tar upload正常。为什么会这样?文档说 z 标志 - “自动压缩或解压缩文件”。

为什么会这样?

答案1

您可能通过在 gzip 文件上使用扩展名误导了 Windows 实用程序tar。由于您使用标志使用 gzip 压缩-z,因此常见的文件类型是.tgz.tar.gz。我不知道 7-zip 是否支持此功能。或者,您可以删除该z标志。

答案2

这是由于历史原因。

在过去,当压缩仍然非常昂贵的时候,有一个程序可以将数据备份到磁带上。它被称为电视应收账款chive。unix 上的磁带设备只是一个文件,因此也可以将此存档转储到文件中。该文件的扩展名通常为.tar

如果您想要压缩此文件(例如,刚刚制作的备份),您可以使用compress添加扩展名的程序.Z ,然后生成的文件将获得两个扩展名。(file.tar.Z

后来的版本允许您将这些与-ztar 中的标志相结合。他们还用 gzip 代替了 compress。生成的 gzip 压缩 tar 文件通常具有扩展名.tar.gz,或在某些 Windows 计算机上(由于 8.3 的限制).tgz

答案3

在 7-zip 中向右滚动,您可能会看到它显示完整的文件夹路径。

如果将其拖到桌面,它会写入文件夹(以及任何子文件夹/文件)吗?

相关内容