将文件夹的代码合并到一个文件里

33 阅读1分钟
const fs = require('fs');
const path = require('path');

function combineFilesToTxt(directory, outputFile) {
    const files = fs.readdirSync(directory);

    let combinedContent = '';

    for (const file of files) {
        const filePath = path.join(directory, file);
        if (fs.statSync(filePath).isDirectory()) {
            // 如果是子目录,递归处理
            combinedContent += combineFilesToTxt(filePath, outputFile);
        } else {
            const fileContent = fs.readFileSync(filePath, 'utf-8');
            combinedContent += `\n\nFile: ${filePath}\n${fileContent}\n`;
        }
    }

    fs.writeFileSync(outputFile, combinedContent);
    return combinedContent;
}

const sourceDirectory = './path/to/your/vue/project';
const outputTxtFile = './combined.txt';
combineFilesToTxt(sourceDirectory, outputTxtFile);
console.log(`已完成 ${sourceDirectory} 文件夹的文件合并到 ${outputTxtFile}`);