如何确定目录是否是符号链接
我运行fs.lstat
并得到这些目录的统计信息:
Stats { dev: 16777220, mode: 16877, nlink: 8, uid: 501, gid: 20, rdev: 0, blksize: 4096, ino: 7366885, size: 272, blocks: 0, atime: 2017-04-16T23:18:17.000Z, mtime: 2017-04-16T23:14:49.000Z, ctime: 2017-04-16T23:14:49.000Z, birthtime: 2017-04-16T23:14:49.000Z }
我如何确定这个目录是否是一个符号链接?
我正在logging统计对象
util.inspect(stats);
但stats对象的方法在对象的__proto__
上:
stats.isSymbolicLink()
是要使用的调用
另外我想你想使用fs.stat()
而不是fs.lstat()
,因为前者不会遵循符号链接。 如果你遵循这个符号链接,最终你会到达一个实际的目录,这将意味着
stats.isSymbolicLink()
将返回false。 但是这不是我们正在寻找的东西。
所以答案是:
fs.stat(<path>, function(err,stats){ if(stats.isSymbolicLink()){ // do your thing } });