wrench -- 遞歸文件策橘、文件夾操作一體化解決方案
1.安裝
npm install wrench
2.使用
var wrench = require('wrench'),
util = require('util');
3.同步操作
//遞歸創(chuàng)建目錄
wrench.mkdirSyncRecursive(dir, 0777);
//遞歸刪除目錄
wrench.rmdirSyncRecursive('my_directory_name', failSilently);
//遞歸讀取目錄內容
wrench.readdirSyncRecursive('my_directory_name');
//遞歸的修改目錄的權限
wrench.chmodSyncRecursive('my_directory_name', 0755);
//修改目錄的所有者
wrench.chownSyncRecursive("directory", uid, gid);
//拷貝目錄
wrench.copyDirSyncRecursive('', '', {
forceDelete: bool, //是否覆蓋現(xiàn)有的目錄
excludeHiddenUnix: bool, // 是否復制隱藏的Unix文件
preserveFiles: bool,// 如果覆蓋的東西和文件已經存在,保持現(xiàn)有的
preserveTimestamps: bool, // Preserve the mtime and atime when copying files
inflateSymlinks: bool, // Whether to follow symlinks or not when copying files
filter: regexpOrFunction,//一個過濾器來匹配文件;如果匹配,什么也不做板熊。
whitelist: bool, // if true every file or directory which doesn't match filter will be ignored
include: regexpOrFunction, //包含過濾器
exclude: regexpOrFunction //排除過濾器
});
//讀取文件
var f = new wrench.LineReader('x.txt');
while(f.hasNextLine()) {
util.puts(f.getNextLine());
}
4.異步操作
//遞歸地讀取目錄內容
var files = [];
wrench.readdirRecursive('my_directory_name', function(error, curFiles) {
//...
});
wrench.copyDirRecursive(srcDir, newDir, {
forceDelete: bool
}, callbackfn);
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者