Node.js 如何确定目录是否为符号链接

Node.js 如何确定目录是否为符号链接,node.js,fs,Node.js,Fs,我运行了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, ctim

我运行了
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 }

如何确定此目录是否为符号链接

我正在用

util.inspect(stats);
但是stats对象的方法在对象的
\uuuuu proto\uuuu
上:

stats.isSymbolicLink()
是要使用的调用

您希望使用
fs.lstat()
而不是
fs.stat()
,因为前者不会跟随符号链接。如果遵循符号链接,最终将到达实际目录,这意味着
stats.isSymbolicLink()
将始终返回false。但这并不是我们真正想要的

因此答案是:

fs.lstat(<path>, function(err,stats){

     if(stats.isSymbolicLink()){
          // do your thing
      }

});
fs.lstat(,函数(err,stats){
if(stats.isSymbolicLink()){
//做你的事
}
});

检查
isSymbolicLink
方法谢谢,我以为util.inspect()会捕获那些方法(如果它们存在的话),但不确定为什么它没有。