打印给定目录中的文件列表,按文件的扩展名过滤。第一个参数是我们要过滤的目录的路径,第二个参数是我们需要打印的文件的类型,
我们必须使用 readdir 函数。
就像运行这个:
node fileJS.js /Users/admin/Desktop .docx
我试过这段代码,但由于某种原因它不会返回任何东西。
你能帮我么
var fs = require('fs'); //require node filesystem module
var path = require('path'); //require node path module (a couple of tools for reading path names)
var pathSupplied = process.argv[2];
var extFilter = process.argv[3];
function extension(element) {
var extName = path.extname(element);
return extName === '.' + extFilter;
};
fs.readdir(pathSupplied, function(err, list) {
list.filter(extension).forEach(function(value) {
console.log(value);
});
});
问题是当您提供以 a 开头的扩展参数时,.
因为在您的过滤器函数 ( extension
) 中,您在比较时添加了另一个点 (line: return extName === '.' + extFilter;
)。
只需像这样调用您当前的脚本:
node fileJS.js /Users/admin/Desktop docx
或者更新您的过滤器函数以假设extFilter
提供了一个起始点。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句