我知道使用带有 -J 选项的 tar 可以压缩具有高压缩级别的文件夹,从而生成 tar.xz 文件。
我有一个文件夹,里面保存着我的工作空间的多个备份,每个备份包含很多库(.so 和 .a 等),这些库通常(但并非总是)是每个备份的相同文件(重复文件)。
有没有一种方法可以压缩我的备份文件夹,考虑到其中有很多重复文件,从而实现最高级别的压缩?将 -J 选项传递给 tar 命令可以完成这项工作吗?
我不想一直处理每个文件夹内的重复文件。是否有一个智能工具可以将所有重复文件视为一个文件然后对其进行压缩?如果没有,压缩此类文件夹的最佳工具和选项是什么?
答案1
您可能想要完全排除所有备份。
否则,生成可靠存档的所有程序都应该能够非常有效地处理重复文件,因此 tar+*、cpio+*、7-zip(带有“solid”选项)、RAR(带有“solid”选项)或其他一些程序,但不是 ZIP。
您可以通过比较包含一个随机文件的档案与包含同一个文件的两个副本的档案的大小来轻松测试这一点。