fs-liter
Version:
A wrapper for fs. To provide a more simple and straight-forward way to support file IO
38 lines (34 loc) • 985 B
JavaScript
const fs = require('fs');
exports.ensureDir = path => {
path = this.dir(path)
if (!fs.existsSync(path))
fs.mkdirSync(path, {recursive: true});
}
exports.mkdir = path => {
if (!fs.existsSync(path))
fs.mkdirSync(path, {recursive: true});
}
exports.lines = path => {
return fs.readFileSync(path, 'utf-8').split(/\r\n?\n/);
}
exports.eachLine = (path,consumer) => {
fs.readFileSync(path, 'utf-8').split(/\r\n?\n/).forEach(consumer);
}
exports.rewrite = (path,content) => {
var fc = Array.isArray(content) ? content.join('\n') : content;
fs.writeFileSync(path, fc, { flag: 'w+'});
}
exports.dir = path => path.replace(/\/[^\/]*$/, "");
exports.cp = (source,dest) => {
this.mkdir(this.dir(dest));
fs.copyFileSync(source,dest);
}
exports.clean = dest => {
fs.rmdirSync(dest, {recursive:true});
}
exports.append = (file,data) => {
fs.appendFileSync(file, data);
}
exports.println = (file,data) => {
fs.appendFileSync(file, data+'\n');
}