【问题标题】:Node.js: Check if file is an symbolic link when iterating over directory with 'fs'Node.js:使用“fs”迭代目录时检查文件是否为符号链接
【发布时间】:2012-07-02 07:46:14
【问题描述】:

Supervisor 是 Node.js 的一个包,它监视应用目录中的文件是否有修改,并在发生修改时重新加载应用。

此脚本将符号链接解释为常规文件并注销警告。我想分叉主管,以便可以完全修复此问题或产生更具描述性的警告。

如何使用 Node.js 的文件系统模块来确定给定文件是否真的是符号链接?

【问题讨论】:

    标签: node.js linux fs symlink-traversal node-supervisor


    【解决方案1】:

    您可以使用fs.lstat,然后在传递给您的 lstat 回调的fs.Stats 对象上调用statis.isSymbolicLink()

    fs.lstat('myfilename', function(err, stats) {
        console.log(stats.isSymbolicLink());
    });
    

    【讨论】:

      【解决方案2】:

      看来你可以使用isSymbolicLink()

      const files = fs.readdirSync(dir, {encoding: 'utf8', withFileTypes: true});
      files.forEach((file) => {
        if (file.isSymbolicLink()) {
          console.log('found symlink!');
        }
      }
      

      【讨论】:

        猜你喜欢
        • 2014-06-08
        • 1970-01-01
        • 2019-08-16
        • 1970-01-01
        • 1970-01-01
        • 2014-05-18
        • 1970-01-01
        • 2011-06-21
        • 2018-11-20
        相关资源
        最近更新 更多