针对许多重复文件的有效归档方法

针对许多重复文件的有效归档方法

WIM 格式自动检测重复的文件和档案,不重复。

UNIX、Linux 或 Mac 上有其他选择吗?

答案1

如果存档足够小,大多数存档格式都可以完成不错的工作,但 zip 除外。 Zip 独立压缩每个文件,但其他流行格式(tar.anything、7z、rar)将存档作为一个整体进行压缩。如果相同的文件在存档中足够接近,则第二次出现的文件可以压缩到几个字节。 “足够接近”的接近程度取决于存档格式。

适用于任何理解硬链接(例如 tar)的归档程序的方法是首先用硬链接替换相同的文件。仅当您不希望具有重复内容的文件具有不同的元数据(权限、时间戳等)时,这才适用。你用复制品查找重复项,然后进行一些后处理,以通过硬链接替换重复项,假设文件名不包含换行符:

fdupes -q -r . | awk '
    $0 == "" {first = ""; next}
    {
        gsub(/\047/, "\047\\\047\047", $0);
        if (first == "") first = $0;
        else system("ln -f \047" first "\047 \047" $0 "\047");
    }'

相关内容