我有几个非常混乱的主目录备份(同一个用户),这些年来我把它们都烧掉了。每隔一段时间,我就把整个主目录复制到一个大硬盘上的新目录中。多年来,主目录的格式发生了很大变化,一些大型、重要的文件被简单地删除以节省空间(我知道有备份)。更糟糕的是,一些文件被从类似的地方移动到myfile
了old/myfile
。
现在,我想将这些备份合并到一个综合目录中,该目录包含所有内容的一份且仅有一份副本(仅包含最新副本)。我希望使用文件名、修改日期和 SHA1Checksums 等内容的工具来合并这些文件。有哪些好工具可以做到这一点?
请不要就我应该如何使用备份软件提出建议。不过,我并不介意听到一些有助于将当前混乱的模型转变为集中式备份模型的软件功能。
谢谢
答案1
我能想到的最简单的方法是将每个文件夹逐个复制到主文件夹中(按存档日期顺序)。然后使用重复数据删除软件扫描主文件夹并删除重复的项目。
答案2
我自己也有这个问题。我正在考虑使用版本控制软件(例如git或者颠覆(也可以看看:TortoiseGit和TortoiseSVN)) 来帮我做这件事。假设您通常将备份聚集到渐进的时间戳中 - 也就是说,您有 2010 年的 /backup1/、2012 年的 /backup2/、2015 年的 /backup3/ 等......(而不是备份日期混杂在每个目录树中) - 那么这将完美地工作。它将允许您:
- 将所有备份文件合并到一个存储库,以便您可以有组织地访问所有文件。
- 按时间顺序提交每个备份目录树并进行维护。
- 轻松比较文件版本(尤其是文本文件,使用差异实用程序) 彼此相处。
- 继续使用该系统进行将来的提交,这样您就不必再这样做了。
唯一的问题是,普通的版本控制软件无法很好地处理大量文件夹,尤其是处理大型和/或二进制(可执行)文件。不过,有专门为此构建的版本控制解决方案。我发现了 3 个看似不错的版本控制解决方案(我还没有测试过),它们都可以在 Windows 和 Linux 上运行:
当然,如果您像我一样,随着时间的推移在备份中移动了整个子目录,这些版本控制解决方案几乎肯定不会发现这一点。为此,有重复数据删除软件,您可以在最终的备份目录树提交上运行它,它应该将所有文件合并在一起(因为移动的目录将简单地提交,忽略它们的重复性)。:)
希望有帮助...