您的位置:首页 > Web前端 > Node.js

玩转Node.js - 05. LS 过滤器

2015-08-18 08:14 666 查看
准备工作:

1. 来到我们的工作目录
$ cd ~/nodejs


2. 如果还没有工作目录,请按下面方式新增

$ cd ~
$ mkdir nodejs
$ cd nodejs


目标:打印目录下符合指定后缀的文件

本次我们将使用
fs.readdir()
来读取目录,并使用
path
模块来分析文件名。

下面开始实际操作:

1. 新建文件
node05.js

$ vim node05.js


2. 使用
require
方法引入
fs
模块

var fs = require('fs');


3. 使用
require
方法引入
path
模块

var path = require('path');


4. 使用
fs.readdir
异步读取目录,并计算行数

fs.readdir(process.argv[2], function (err, list) {
list.forEach(function (file) {
if (path.extname(file) === '.' + process.argv[3]){
console.log(file);
}
});
});


保存退出。

fs.readdir()
方法接收两个参数:第一个是路径,第二个是回调函数:

function callback (err, list) { /* ... */ }


其中list是一个数字,包含每个文件的文件名(字符串形式)。

path.extname(file)
方法可以返回文件的后缀

5. 运行,请替换下面的”<目录>”为您自己的,”<后缀>”不要带”.”号

node node05.js <目录> <后缀>


结果会输出目录下指定后缀的文件名

本篇代码

文件:
~/nodejs/node05.js


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

fs.readdir(process.argv[2], function (err, list) { list.forEach(function (file) { if (path.extname(file) === '.' + process.argv[3]){ console.log(file); } }); });


参考资料:

File System Node.js v0.12.7 Manual & Documentation

learnyounode - FILTERED LS
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  node.js