我面临的问题很简单。我想跟踪文件/文件夹,即使它已被重命名/删除等? NodeJS是否提供了一种在文件中访问此信息的方法?我已经尝试了默认文件系统模块fs.stats()
:https://nodejs.org/api/fs.html#fs_class_fs_stats。不幸的是,它似乎没有为特定文件提供这种唯一的ID引用。
NodeJS中是否存在这样的解决方案?
注意:我不想为文件生成唯一ID。将随机字符串分配给文件并将字符串与此关联起来非常容易。但事实恰恰相反。我想将文件与某种系统范围的字符串相关联。
感谢任何帮助。
答案 0 :(得分:4)
查看链接https://nodejs.org/api/fs.html#fs_class_fs_stats
Stats {
dev: 2114,
ino: 48064969,
mode: 33188,
nlink: 1,
uid: 85,
gid: 100,
rdev: 0,
size: 527,
blksize: 4096,
blocks: 8,
atime: Mon, 10 Oct 2011 23:24:11 GMT,
mtime: Mon, 10 Oct 2011 23:24:11 GMT,
ctime: Mon, 10 Oct 2011 23:24:11 GMT,
birthtime: Mon, 10 Oct 2011 23:24:11 GMT }
我可以看到unix inode编号。
两个文件可以具有相同的inode编号吗?
两个文件可以具有相同的inode,但前提是它们是不同分区的一部分。 Inode在分区级别上是唯一的,而不是在整个系统上。
因此,除了inode编号之外,还会比较设备编号。
var uniqueFileId[fileName] = (Stats.dev + Stats.ino)