file.js 902 字节
const { once } = require('events');
const fs = require('fs');
const readline = require('readline');
const mkdir = (path) => !fs.existsSync(path) && fs.mkdirSync(path, { recursive: true });
const searchInFile = async (filePath, content, endContent) => {
    const rl = readline.createInterface({ input: fs.createReadStream(filePath), crlfDelay: Infinity });
    const reg = content ? new RegExp(content, 'i') : undefined;
    const endReg = endContent ? new RegExp(endContent, 'i') : undefined;
    const lines = [];
    let stop = false;
    rl.on('line', (line) => {
        if (stop) {
            rl.close();
            return;
        }
        reg && reg.test(line) && lines.push(line);
        endReg && endReg.test(line) && (stop = true) && rl.close();
    });
    await once(rl, 'close');
    return lines;
};
module.exports = {
    mkdir,
    searchInFile,
};
//# sourceMappingURL=file.js.map