将多个文本文件合并为一个文件

将多个文本文件合并为一个文件

我正在使用 unixpr命令将多个文本文件合并为一个文本文件:

pr -F *files > newfile

每个文件的长度和行数都不同。我对结果非常满意,我喜欢它包含原始文本文件的名称,后面跟着该文件的内容。但是,我想消除原始文本文件的名称和其内容之间的空行。我只希望不同文本文件之间有空行来分隔它们。此外,它会在^L每个文本文件的内容后打印字符,我想消除该字符。

读入的每个文件也都有一个“页”号。只有一个文件的长度超过默认的 66 行。该文件最终被分成 2 个“页”,并被分成由空行分隔的 2 个部分。是否可以连续写入该文本而不进行拆分?

感谢您的任何帮助!

答案1

要在文件之间留空行:

cat file1 newline file2 newline file3 > newfile

其中 'newline' 是带有空行的文件。

答案2

您可以使用 AWK 实用程序:

awk 'FNR==1{print ""}{print}' *files > newfile

来源:https://stackoverflow.com/questions/1653063/how-do-i-include-a-blank-line-between-files-im-concatenating-with-cat

答案3

您可以使用cat以下命令将文件的文本转储到一个文件中:

cat file1 file2 file3 > newfile

答案4

for file in *.txt; do (cat "${file}"; echo) >> concatenated.txt; done

上述操作将把 eacb txt 文件的内容附加到 concatenated.txt 中,并在它们之间添加一个新行。

相关内容