获取具有指定扩展node.js的所有文件

时间:2016-04-18 08:06:07

标签: node.js file directory

我正在使用node.js.我想循环遍历所有带扩展名的文件.coffee, 但我无处可寻。有人可以帮帮我吗?

提前致谢!

1 个答案:

答案 0 :(得分:1)

以下函数将使用提供的正则表达式返回指定目录中的所有文件。

<强>功能

var path = require('path'), fs=require('fs');

function fromDir(startPath,filter,callback){

    //console.log('Starting from dir '+startPath+'/');

    if (!fs.existsSync(startPath)){
        console.log("no dir ",startPath);
        return;
    }

    var files=fs.readdirSync(startPath);
    for(var i=0;i<files.length;i++){
        var filename=path.join(startPath,files[i]);
        var stat = fs.lstatSync(filename);
        if (stat.isDirectory()){
            fromDir(filename,filter,callback); //recurse
        }
        else if (filter.test(filename)) callback(filename);
    };
};

<强>用法

fromDir('../LiteScript',/\.coffee$/,function(filename){
    console.log('-- found: ',filename);
});