要在 Mac 上合并纯文本文件,请使用终端的 cat 命令并将输出重定向到一个新文件中。这会按您指定的顺序保留每个文件的内容。如果您更喜欢可视化操作流程,且只有少数几个小文件,也可以将它们的文本复制到一个“文本编辑”文档中。选择适合您文件的方法,并将结果以新名称保存,以保持原始文件完好无损。

合并文件之前

请检查输入文件是否为文本文件(例如 .txt),并确定它们的顺序。串联会将它们的内容首尾相连拼接在一起;它不会对段落进行排序、删除重复项或合并格式。如果文件含有标题,请决定是否要在各章节之间添加分隔符。cat 命令会按给定的顺序将指定的文件复制到标准输出,您可以将其重定向到目标文件。GNU 的 cat 文档

例如,如果您的“文稿”文件夹中有 chapter-1.txt、chapter-2.txt 和 notes.txt 这些文件,以下命令将在该处创建 combined.txt:

cat ~/Documents/chapter-1.txt ~/Documents/chapter-2.txt ~/Documents/notes.txt > ~/Documents/combined.txt

请将这些名称替换为您的实际文件名。> 会将命令的输出发送到目标位置。如果需要,它会创建目标文件;但如果已存在同名文件,它将替换其现有内容。请使用新的目标文件名,切勿将某个输入文件名作为目标文件:这样做可能会导致该输入文件在被读取之前就被擦除。

使用终端合并文件

从“应用程序”>“实用工具”中打开“终端”,或使用“聚焦”搜索找到它。“终端”是 macOS 的命令行应用程序;Apple 的指南介绍了如何输入命令并按 Return 键来运行它们。Apple 的终端使用指南

避免路径和排序错误的最简单方法是使用完整的文件路径,如示例中所示。路径开头的波浪号(~)代表您的个人主文件夹。如果文件名或文件夹名包含空格,请将整个路径用引号括起来,例如 "~/Documents/Meeting notes.txt"。但是,在 shell 命令中,带引号的波浪号可能无法按预期展开;此时请改用 $HOME:"$HOME/Documents/Meeting notes.txt"。Apple 针对主文件夹路径以及在“终端”中指定文件路径均有说明文档。Apple 的指定文件和文件夹指南

运行该命令,然后在“文本编辑”或其他文本编辑器中打开 combined.txt,检查各部分的顺序。如果“终端”报告找不到文件,请核对它的拼写、扩展名和文件夹路径。您可以使用 ls ~/Documents 列出“文稿”中的文件,然后再修正命令。除非您希望包含所有匹配的文件,否则请避免添加通配符(如 *.txt);通配符在稍后重复运行时还可能会把之前合并生成的输出文件也包含进去。

检查章节分界和换行符

cat 会原样复制文件内容。它不会在文件之间插入标题、空行或分隔符。如果某个文件末尾没有换行符,下一个文件的第一行可能会直接连接到它的最后一行末尾。请检查生成文档中的分界处。如果各部分需要明显的分隔空间,对于少量文件而言,可靠的做法是在组合或编辑最终文档时手动添加标题或空行。

终端命令合并的是文本内容,而不是带格式的文档。富文本样式、表格和图像不适用于这种纯文本工作流。如果要生成格式化交付物,请改用“文本编辑”或文字处理软件来组合并编排材料的格式。

在“文本编辑”中合并少量文件

对于少量文件,可以在“文本编辑”中分别打开每个文件,然后按选定的顺序将文本复制到一个新文档中。如果需要,可以在各部分之间插入标题或空行,然后保存合并后的副本。“文本编辑”可以打开纯文本文件,也可以将文稿存储为纯文本;Apple 指出,新文稿默认是富文本,将富文本转换为纯文本会移除样式和格式。若要将结果保持为 .txt,请在存储前选择“格式”>“制作纯文本”,或在“文本编辑”的“新建文稿”设置中选择“纯文本”。Apple 的“文本编辑”指南

当仔细检查和组织内容比速度更重要时,请使用这种手动方法。对于大量文件或可重复的排序需求,使用“终端”则更为直接。无论采用哪种工作流,在将最终文档视为完成之前,都请检查是否存在缺失文本、意外拼接的行以及是否符合预期顺序。

来源