///
///
import * as dir from "node-dir";
// display contents of files in this script's directory
dir.readFiles("./",
function(err, content, next) {
console.log('content:', content);
next();
},
function(err, files) {
console.log('finished reading files:', files);
});
// display contents of huge files in this script's directory
dir.readFilesStream("./",
function(err: any, stream: any, next: any) {
var content = '';
stream.on('data', function(buffer: any) {
content += buffer.toString();
});
stream.on('end',function() {
console.log('content:', content);
next();
});
},
function(err, files) {
console.log('finished reading files:', files);
});
// match only filenames with a .txt extension and that don't start with a `.ยด
dir.readFiles("./", {
match: /.txt$/,
exclude: /^\./
}, function(err, content, next) {
console.log('content:', content);
next();
},
function(err, files){
console.log('finished reading files:',files);
});
// exclude an array of subdirectory names
dir.readFiles("./", {
exclude: ['node_modules', 'test']
}, function(err, content, next) {
console.log('content:', content);
next();
},
function(err, files){
console.log('finished reading files:',files);
});
// the callback for each file can optionally have a filename argument as its 3rd parameter
// and the finishedCallback argument is optional, e.g.
dir.readFiles("./", function(err: any, content: any, filename: string, next: any) {
console.log('processing content of file', filename);
next();
});
dir.files("./", function(err, files) {
console.log(files);
});
dir.files("./", function(err, files) {
// sort descending
files.reverse();
// include only certain filenames
files = files.filter(function(file: any) {
return ['allowed', 'file', 'names'].indexOf(file) > -1;
});
// exclude some filenames
files = files.filter(function(file: any) {
return ['exclude', 'these', 'files'].indexOf(file) === -1;
});
});
dir.subdirs("./", function(err, subdirs) {
console.log(subdirs);
});
dir.paths("./", function(err, paths) {
console.log('files:\n', paths.files);
console.log('subdirs:\n', paths.dirs);
});
dir.paths("./", true, function(err, paths) {
console.log('paths:\n', paths);
});