# batch-replace **Repository Path**: work_83/batch-replace ## Basic Information - **Project Name**: batch-replace - **Description**: 文件批量替换工具 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-14 - **Last Updated**: 2026-05-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # BatchReplace 批量替换工具 基于 Electron + React 的批量文本和文件名替换工具,支持内容替换、文件/文件夹重命名、差异预览、并行处理。 ## 功能特性 - **批量内容替换** - 在多个文件中查找并替换文本,支持差异预览 - **文件/文件夹重命名** - 重命名匹配搜索模式的文件和文件夹 - **并行处理** - 8个 Worker 线程并行扫描和替换,速度提升4-8倍 - **智能过滤** - 使用 glob 模式包含/排除文件(如 `*.js`、`src/**`) - **虚拟滚动** - 支持10万+匹配项不卡顿 - **忽略大小写** - 可切换大小写不敏感匹配 - **差异预览** - 执行前查看所有变更 - **跨文件导航** - 在所有文件的匹配项之间快速跳转 - **便携版** - 无需安装,双击即可运行 ## 快速开始 ### 开发模式 ```bash npm install npm run dev ``` ### 打包构建 ```bash npm run build ``` 输出:`release/BatchReplace.exe`(便携版,无需安装) ## 使用说明 1. 点击"选择文件夹"选择项目目录 2. 输入查找内容和替换内容 3. 配置替换范围: - **文件内容** - 替换文件内的文本 - **文件名称** - 重命名匹配的文件 - **文件夹名称** - 重命名匹配的文件夹 4. 设置包含/排除过滤规则: - "仅包含文件"留空 = 不扫描内容 - 设为 `*` = 包含所有文件 - 使用 `*.js, *.ts` = 只包含特定类型 5. 点击"预览"扫描并查看匹配项 6. 点击"执行替换"应用更改 ## 配置说明 | 字段 | 说明 | |------|------| | 查找内容 | 要查找的文本(支持正则表达式) | | 替换为 | 替换后的文本 | | 忽略文件 | 排除的文件 glob 模式(如 `*.min.js, *.map`) | | 忽略文件夹 | 排除的文件夹(如 `node_modules, .git`) | | 仅包含文件 | 只扫描这些文件(`*` = 全部,空 = 不扫描) | | 仅包含文件夹 | 只扫描这些文件夹(`*` = 全部,空 = 不扫描) | ## 技术栈 - Electron 28 - React 18 - Vite 5 - Tailwind CSS - Node.js Worker Threads(并行处理) - react-window(虚拟滚动) ## 许可证 MIT