使用cat命令在Ubuntu 18.04中组合文本文件

时间:2024-05-19 13:25:04

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

我们在本文中提供一些示例,它们将帮助您在以下四种方案中理解cat命令的正确用法:

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

注意:在更改内容之前备份重要文件是一种很好的做法。

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

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

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

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

实例:

[email protected]:~/Linux公社/www.linuxidc.com$ cat linuxidc1.txt linuxidc2.txt linuxidc3.txt
linuxidc1  www.linuxidc.com
linuxidc2  linuxidc.com
linuxidc3  m.linuxidc.com

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

使用cat命令在Ubuntu 18.04中组合文本文件

使用cat命令合并三个文本文件

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

$ [command] > [filename]

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

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

实例:

[email protected]:~/Linux公社/www.linuxidc.com$ cat linuxidc1.txt linuxidc2.txt linuxidc3.txt > linuxidc4.txt
[email protected]:~/Linux公社/www.linuxidc.com$ cat linuxidc4.txt
linuxidc1  www.linuxidc.com
linuxidc2  linuxidc.com
linuxidc3  m.linuxidc.com

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

使用cat命令在Ubuntu 18.04中组合文本文件

将3个文件合并到第四个文件中

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

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

假设你有三个文本文件; 每个都包含一些文字。 您希望合并所有三个文本并将输出保存到第四个文件,但按字母顺序排列。 这是你将如何做到这一点:

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

实例:

[email protected]:~/Linux公社/www.linuxidc.com$ cat linuxidc1.txt
c-linuxidc1  www.linuxidc.com
[email protected]:~/Linux公社/www.linuxidc.com$ cat linuxidc2.txt
b-linuxidc2  linuxidc.com
[email protected]:~/Linux公社/www.linuxidc.com$ cat linuxidc3.txt
a-linuxidc3  m.linuxidc.com
[email protected]:~/Linux公社/www.linuxidc.com$ cat linuxidc1.txt linuxidc2.txt linuxidc3.txt > linuxidc4.txt
[email protected]:~/Linux公社/www.linuxidc.com$ cat linuxidc4.txt

在下图中,您可以查看每个文本文件中的文本。 如果我只是将文本组合到一个新文件linuxidc4.txt,输出将如下所示:
c-linuxidc1  www.linuxidc.com
b-linuxidc2  linuxidc.com
a-linuxidc3  m.linuxidc.com

使用cat命令在Ubuntu 18.04中组合文本文件

合并文本文件

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

$ cat linuxidc1.txt linuxidc2.txt linuxidc3.txt | sort > linuxidc5.txt

实例:

[email protected]:~/Linux公社/www.linuxidc.com$ cat linuxidc1.txt linuxidc2.txt linuxidc3.txt | sort > linuxidc5.txt
[email protected]:~/Linux公社/www.linuxidc.com$ cat linuxidc5.txt

输出:

a-linuxidc3  m.linuxidc.com
b-linuxidc2  linuxidc.com
c-linuxidc1  www.linuxidc.com

使用cat命令在Ubuntu 18.04中组合文本文件

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

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

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

这是一个示例目标文件:

使用cat命令在Ubuntu 18.04中组合文本文件

示例文本文件

这是一个示例源文件:

使用cat命令在Ubuntu 18.04中组合文本文件

示例源文件

附加文本的语法:

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

实例:

cat linuxidc5.txt >> linuxidc4.txt

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

使用cat命令在Ubuntu 18.04中组合文本文件

将文本附加到文件

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

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

$ cat >> [linuxidc.txt]

实例:

[email protected]:~/Linux公社/www.linuxidc.com$ cat >> linuxidc4.txt

输入此命令后,将出现一个光标,供您输入要添加到指定文件的文本。 输入文本并按Ctrl + D. 您输入的文本将附加在文件末尾,而不会干扰其已存在的内容。

使用cat命令在Ubuntu 18.04中组合文本文件

将文本从终端直接附加到文件

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

使用cat命令在Ubuntu 18.04中组合文本文件

总结

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