在 Linux 命令行中连接文件在 Linux 命令行中连接文件在 Linux 命令行中连接文件在 Linux 命令行中连接文件
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

在 Linux 命令行中连接文件

发表 admin at 2025年2月28日
类别
  • 未分类
标签

想要在 Linux 命令行中连接两个文件?以下是如何使用 cat 命令执行此操作。

简单来说,连接就是连接两个字符串。

例如,有两个字符串:snow和ball。因此,当您连接它们时,它将形成一个字符串snowball。

在使用 Linux 时,您经常会发现自己处于必须连接两个或多个文件的情况。

因此,在本指南中,我将分享多个连接文件的示例。

如何在 Linux 中连接文件

当您考虑 Linux 中文本文件的串联时,cat 命令统治着整个类别。

为了进行演示,我将使用两个名为 TextFile1 和 TextFile2 的文本文件,它们的文件包含如下:

sagar@LHB:~$ cat TextFile1
File contents of TextFile1

sagar@LHB:~$ cat TextFile2
File contents of TextFile2

现在,让我们跳到示例部分。

在标准输出中连接多个文件

这是大多数用户使用的最简单的串联,您可以在标准输出中组合多个文件的输出:

cat TextFile1 TextFile2

连接文件内容并将其保存到新文件

上面,我解释了如何连接多个文件,但它不会保存任何更改。

因此,如果您想连接文件并将输出保存到另一个文件,您可以将输出数据流重定向到一个新文件。

例如,在这里,我连接了 TextFile1 和 TextFile2 的文件内容,并将输出保存到名为 Output_File 的新文件中:

cat TextFile1 TextFile2 > Output_File

但它会覆盖 Ouput_File 的文件内容(如果有),并且您可能会丢失敏感数据。

要连接输出并将其保存到另一个文件而不覆盖,请使用 >> 而不是 >:

cat TextFile1 TextFile2 >> Output_File

正如你所看到的,两个文件的污染被保存在Output_File的内容下面。

连接时从标准输入添加附加数据

您并不总是只想连接两个不同文件的文件内容,您可能还想向其中添加其他数据。

假设我想连接两个文件 TextFile1 和 TextFile2,但我想添加一些附加数据,在这种情况下,使用标准输入是最佳选择。

可以通过 - 标志调用。

例如,我想在 TextFile1 的内容上方添加数据,因此我将使用以下内容:

cat - TextFile1 >> TextFile2

它将作为普通的 cat 命令执行,您可以在其中添加简单的文本。

添加完文本后,保存文件并退出使用 Ctrl + D。

为了供您参考,我添加了以下行:

Text from the standard output that should be placed above the file contents of TextFile1

正如您所看到的,在这里,我将两个文件与来自标准输入的附加数据连接起来。

同样,如果你想在两个文件污染后添加额外的数据而不是上面的,可以参考以下内容:

cat TextFile1 - >> TextFile2

在这里,我在标准输入中输入了以下内容:

Content from standard input that will be placed after contents of two files

将命令输出连接到文件

如果想使用cat命令将命令的输出连接到特定文件,可以参考给定的命令语法:

Command | cat > file

例如,在这里,我将当前使用的内核版本连接到名为 Kernels 的文件:

uname -r | cat > Kernels

但您是否知道您还可以将输出、错误和标准输入重定向到文件?

这非常简单,并且在您只想连接错误的情况下非常有用:

充分利用 cat 命令

虽然大多数用户使用 cat 命令来创建和读取文件,但是如果我告诉您您可以用它做更多事情呢?

在阅读以下指南之前,我什至都没有意识到它的力量:

我希望本指南对您有所帮助。

如果您有任何疑问,请随时在评论中提问。

©2015-2025 Norria support@norria.com