如何识别如果两个文件是相同的javascript(nodejs
),一个只是另一个重命名的副本?
用例:我正试图编写一个脚本来同步HDD (hdd1)及其克隆(hdd2)。95%只有视频文件(大小:~ 1gb,计数:~4000)。有时我重命名hdd1
中的文件,并将它们移动到不同的文件夹。因此,在同步时,而不是删除和从hdd1
到hdd2
的新副本,我只是想重命名和移动hdd2
中的文件(已识别的文件)以匹配其在hdd1
中的位置。
就像mscdex提到的那样,可能已经有一个工具可以做你正在寻找的事情(比如rsync)。
如果你对从头开始做更感兴趣,作为一个学习经验,那么你要找的是一个文件的校验和或哈希。为每个文件生成一个校验和,就相当于为文件提供了一种指纹。然后,您可以使用它与校验和或其他文件进行比较,如果它们相同,则校验和也将匹配。
Node.js的Crypto库提供了生成校验和的方法。本文将介绍其中的一些内容。