当前位置: 首页>>技术教程>>正文


在Ubuntu 18.04中使用CAT命令合并文本文件

, ,

Linux中的CAT命令不仅有助于创建文本文件,显示其内容,而且还有助于合并两个或多个文本文件中的文本。然后可以将合并的文本保存到另一个文本文件中。在本教程中,您将学习如何使用CAT命令将两个或更多文件中的文本组合成一个文件。这将帮助您从普通初学者开始在Ubuntu上获得超级用户状态。我们已经在Ubuntu 18.04 LTS系统上运行了本教程中提到的命令。

让我们在本文中提供一些示例,这些示例将帮助您了解以下四种情况下CAT命令的正确用法:

  • 将文本从多个文本文件合并到单个文本文件。
  • 合并多个文件中的文本,然后按字母顺序将输出保存到另一个文件中。
  • 将文本从一个文本文件追加到另一个。
  • 将文本从Ubuntu终端直接添加到文本文件中。

注意:在更改重要文件之前,备份重要文件是一个好习惯。

示例1:将文本从三个文件合并到另一个文本文件

我们在系统上创建了三个示例文本文件,名称分别为textfile1.txt,textfile2.txt和textfile3.txt。所有这些文件都包含一行文本。 CAT命令的以下用法将在单个输出中显示所有这些文件的文本。

通过按CTRl + Alt + T或通过Dash打开Ubuntu终端,然后输入以下命令:

$ cat [file1.txt] [file2.txt] [file3.txt]

在下图中,您可以看到三个文本文件的输出如何作为单个合并输出打印:

Merge three text files with cat command

Linux允许您使用以下语法将命令的输出打印到文件:

$ [command] > [filename]

让我们利用此命令和cat命令将文本从三个不同的文本文件保存到新的文本文件中:

$ cat [file1.txt] [file2.txt] [file3.txt] > [file4.txt]

在下图中,我将合并后的文本从我的三个文件保存到新文件textfile4.txt;然后,我将新文件的内容打印到屏幕上供您查看:

Merge 3 files into a fourth file

请记住,如果目标文本文件已经存在于系统中,则其内容将被覆盖。

示例2:合并三个文件中的文本,然后按字母顺序将输出保存到另一个文件

假设您有三个文本文件;每个都包含一些文本。您希望合并所有三个文本,并将输出保存到第四个文件,但要按字母顺序。这是您将执行的操作:广告

$ cat [file1.txt] [file2.txt] [file3.txt] | sort > [file4.txt]

在下图中,您可以查看每个文本文件中的文本。如果仅将文本合并到新文件textfile4.txt中,输出将如下所示:

combine text files

但是,我希望将按字母顺序排序的输出打印到我的文本文件中,因此我将使用以下命令:

$ cat textfile1.txt textfile2.txt textfile3.txt | sort > textfile5.txt

Merging text from three files, and saving the output to another file in alphabetical order

您可以看到我新创建的textfile5.txt如何包含来自三个源文件的合并和排序文本。

示例3:将文本从一个文本文件追加到另一个

cat命令还可以用于将文本从源文件追加到目标文件,而不会弄乱后面的内容。

这是一个示例目标文件:

Sample text file

这是一个示例源文件:

sample source file

附加文本的语法:

$ [sourcefile.txt] >> [destinationfile.txt]

这是我将源文件中的文本附加到目标文件后的样子:

Append text to file

示例4:将文本直接从终端追加到文件

如果要从命令行在现有文本文件的末尾追加一些文本,则可以使用以下语法:

$ cat >> [textfile.txt]

输入此命令后,将出现一个光标,供您输入要添加到指定文件的文本。输入文字,然后按Ctrl + D。您输入的文本将被添加到文件的末尾,而不会打扰它已经存在的内容。

Appending text from the Terminal directly to a file

您可以在下图中看到将此文本添加到文件中:

Resulting text

我们希望本文描述的详细示例以及cat命令的语法在每种情况下都将有助于将多个文件的内容合并为一个文件。此外,您不仅可以从一个文件到另一个文件,而且可以直接从Ubuntu Terminal进行文本的排序和附加。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/11194.html,未经允许,请勿转载。