首先,我曾经zip
在 Ubuntu 中存档文件夹。然后我曾经7zip
在 Windows 上提取这些文件夹。文件夹中有符号链接。我确定文件夹中任何符号链接指向的所有内容也都在文件夹中。
如何设置 zip 标志,以便在 Windows 下提取文件夹后,符号链接可以像以前一样工作?这意味着不应遵循符号链接,而是将其存档为符号链接信息,我不确定 zip 格式是否支持。
首先,我曾经zip
在 Ubuntu 中存档文件夹。然后我曾经7zip
在 Windows 上提取这些文件夹。文件夹中有符号链接。我确定文件夹中任何符号链接指向的所有内容也都在文件夹中。
如何设置 zip 标志,以便在 Windows 下提取文件夹后,符号链接可以像以前一样工作?这意味着不应遵循符号链接,而是将其存档为符号链接信息,我不确定 zip 格式是否支持。
简短回答:是的,如果您不指定
--symlinks
选项。默认情况下,该
zip
命令将取消引用符号链接。这意味着符号链接将替换为它们链接到的实际文件或文件夹。因此,您可以确定 linux 系统上的符号链接引用的所有文件和文件夹实际上都将作为“真实”文件和文件夹包含在您的 zip 文件中。在 Windows 上解压缩 zip 文件时,这些文件和文件夹中的任何一个都将显示为“真实”文件和文件夹。简短的回答:你不能,除非 1)接收文件系统支持 linux 符号链接和 2)链接的目标文件/文件夹存在
ZIP 格式支持存储符号链接。要这样存储符号链接,您可以使用该
--symlinks
选项。但是,Linux 下的符号链接仅适用于支持这些符号链接的文件系统。因此,需要在合适的文件系统上提取此类存档,以使这些链接再次起作用(当然,前提是在提取 zip 文件的系统上有相应的目标文件)。