nodejs:识别文件克隆

时间:2015-05-27 03:11:04

标签: javascript node.js file

如何识别javascript(nodejs)中两个文件是否相同,一个只是其他文件的重命名副本?

用例:我正在尝试编写用于同步HDD(hdd1)及其克隆(hdd2)的脚本。仅95%的视频文件(大小:~1 GB,计数:~4000)。有时我会重命名hdd1中的文件并将它们移动到不同的文件夹中。因此,在同步时,我只想重新命名并移动hdd1中的文件(已识别的文件)以匹配其在{{1}中的位置,而不是从hdd2hdd2的删除和新副本。 }}

1 个答案:

答案 0 :(得分:2)

就像mscdex提到的那样,可能已经有一个工具可以满足您的需求(例如rsync)。

如果您对从头开始学习经验感兴趣,那么您所寻找的内容称为checksum或文件的哈希值。为每个文件生成校验和为您提供了一种文件的指纹。然后,您可以使用它来与校验和或其他文件进行比较,如果它们相同,则校验和也将匹配。

Node.js的Crypto library为您提供了生成校验和的方法。 This博客文章介绍了其中一些内容。