如何在Linux中使用cat命令合并文本文件
cat命令在Linux中非常有用。它具有与操纵文本文件相关的三个主要功能:创建文本文件,显示文本文件和组合文本文件。
我们讨论了使用cat命令(以及其他方法)在Linux的命令行上创建和查看文本文件,但是假设我们有三个文本文件:file1.txt,file2.txt和file3.txt。我们想将它们组合(或者连接)为一个文本文件,其中包含来自这三个文件的信息。我们也可以使用cat命令执行此操作。
只需打开一个终端并输入以下命令:
cat file1.txt file2.txt file3.txt
显然,将上面示例中的文件名替换为我们自己的文件名。
这三个文本文件的合并内容将出现在终端中。
但是,通常,我们可能希望将这些文本文件合并为另一个文本文件,而不仅仅是将结果打印到屏幕上。幸运的是,这很简单。我们需要做的就是在要连接的文件列表之后添加一个输出重定向符号(>
),然后指定最终文本文件的名称。
cat file1.txt file2.txt file3.txt > file4.txt
注意:如果输出重定向符号之后列出的文件已经存在,则将被覆盖。因此,在指定组合文本文件的名称时要小心。在本文的后面,向我们展示如何将文件追加到现有文件的末尾。
如果打开openfile4.txt(使用cat命令或者我们选择的文本编辑器),则应发现它包含前三个文本文件的文本。
如果我们合并了多个文件中的项目列表,并且希望它们在合并文件中按字母顺序排列,则可以对结果文件中的合并项目进行排序。为此,请输入我们之前向我们展示的基本" cat"命令,然后是管道命令(|)和" sort"命令。然后,键入输出重定向符号(>
),然后键入要将组合文本复制到其中的文件的名称。结果文件中的所有文本行都将按字母顺序排序。
cat file1.txt file2.txt file3.txt | sort > file4.txt
如前所述,还有一种将文件追加到现有文件末尾的方法。键入" cat"命令,然后输入要添加到现有文件末尾的文件。然后,键入两个输出重定向符号(>>
),然后键入要添加到的现有文件的名称。
cat file5.txt >> file4.txt
如果要向现有文本文件中添加一些新文本,则可以使用cat命令直接从命令行进行操作(而不是在文本编辑器中打开它)。键入" cat"命令,后跟双重输出重定向符号(>>
)和要向其添加文本的文件的名称。
cat >> file4.txt
光标将出现在提示下方的下一行。开始输入要添加到文件中的文本。完成后,在最后一行之后按Enter,然后按Ctrl + D将文本复制到文件末尾并退出cat。