atom 不支持原生批量合并文件,需依赖 script 插件执行 shell 命令(如 linux/macos 的 cat *.txt > merged.txt 或 powershell 的 get-content a.txt,b.txt | set-content merged.txt),或配合 advanced-open-file 手动预览粘贴,且须注意编码一致性。

Atom 本身不提供原生的「批量合并多个文件内容」功能,所有看似“一键合并”的操作,都依赖插件或外部命令配合。直接在 Atom 界面里点几下就生成一个合并后的 merged.txt,这事不存在——除非你提前配置好流程。
用 script 插件执行 shell 命令合并
这是最轻量、最可控的方式,适合熟悉命令行的用户。先装好 script 插件(它允许你在 Atom 里运行任意脚本),然后在项目根目录右键 → “Run Script”,输入对应命令即可。
- Linux/macOS 下合并当前目录所有
.txt文件(按字母序):cat *.txt > merged.txt
- 若需按指定顺序(如
a.txt、b.txt、c.txt):cat a.txt b.txt c.txt > merged.txt
- Windows PowerShell 等效命令:
Get-Content a.txt, b.txt, c.txt | Set-Content merged.txt
- 注意:
script默认工作路径是当前打开的文件所在目录,不是项目根目录;如果当前没打开文件,它会 fallback 到 Atom 启动路径
advanced-open-file + 手动拼接的临时方案
当你只是偶尔合并 2–3 个文件,且希望在编辑器内预览再保存,可以靠多标签+复制粘贴提速。关键不是“自动”,而是减少切换和重复操作。
- 用
advanced-open-file快速打开多个目标文件(支持通配符,如*.log) - 按住
cmd(macOS)或ctrl(Windows/Linux)逐个点击标签页,把它们全部激活 - 用
ctrl-shift-P调出命令面板,输入Editor: Select All→Editor: Copy,切到新标签页粘贴 - 每粘贴一段后手动加个空行分隔,避免内容连在一起难以区分来源
- 最后
cmd-S保存为新文件;别忘了检查编码——多个文件混合时,UTF-8和GBK混用会导致乱码
为什么不用 merge-conflicts 或 Nuclide?
这两个插件名字带“merge”,但完全不适用于文件内容拼接场景:
-
merge-conflicts只响应 Git 冲突标记(),对普通文本文件无感知 -
Nuclide的实时协作编辑是面向「同一文件的多人编辑」,不是「多文件内容串联」 - 试图用它们强行合并,结果要么报错
No merge conflicts found,要么根本没反应
真正容易被忽略的是编码一致性——哪怕你用最稳妥的 cat 命令,只要其中某个 .txt 是 GBK 编码,而其他是 UTF-8,合并后打开就会出现部分乱码。这不是 Atom 的问题,但你在 Atom 里看不到提示,得自己先用 file -i *.txt 检查一遍。











