如何使用Linux Cat命令(附带示例)
在任何操作系统中,用户都可以使用文件并执行创建、删除和读取文件等操作。在Linux中,情况也不例外。
虽然在Linux操作系统中可以使用图形用户界面来使用文件,但大多数Linux用户更喜欢通过终端与操作系统进行交互。
因此,Linux有一些命令允许用户直接从终端操作文件。其中一个命令就是cat 命令。
根据Linux的man页面,cat命令用于连接文件并将文件内容打印到标准输出。Linux的man页面是旨在帮助用户了解Linux命令及其用法的文档文件。
要访问任何Linux命令的man页面,只需输入man 。例如,要查看cat命令的man页面,请在终端中执行以下命令:
man cat
cat命令的用途
如前所述,cat命令可用于将文件的内容打印到屏幕上。它还可以用于连接文件并输出它们的内容。这意味着如果您向cat命令提供多个文件,它将连接它们的内容并将其内容输出到屏幕上。
简单来说,cat命令将多个文件中的内容组合在一起并将其输出到屏幕上。但是,在这样的操作中,cat命令不会创建任何新文件,并且用于cat命令的原始文件将保持不变。
cat命令还用于重定向。重定向是指用户如何更改标准输入的来源以及标准输出和标准错误的目的地。标准输入、标准输出和标准错误是Linux中用于通信的标准流。
默认情况下,标准输入是键盘,标准输出和标准错误默认显示在屏幕上。
因此,重定向意味着我们可以将标准输入从默认的键盘重定向并从文件或任何其他来源获取输入。
至于标准输出和标准错误,默认显示在屏幕上,通过重定向,您可以将这些输出写入文件。
cat命令语法
cat命令的语法如下:
cat [OPTION]... [FILE]...
在Linux的man页面中,方括号square中列出的任何内容都是可选的。因此,在上述语法中,cat命令不必拥有OPTION或文件作为参数。它可以拥有这两者之一,两者都有或者完全没有。
省略号(…)用于表示允许有一个或多个前面的操作数或参数。因此,cat命令可以接受一个或多个OPTION或FILE。
FILE表示我们希望cat命令连接并显示的文件。OPTION表示可以与cat命令一起使用的标志。可以使用的cat命令选项如下所示:
cat命令通过获取传递给它的文件并将它们的内容输出到标准输出,即终端窗口。如果传递给它多个文件,则它们的内容会被连接起来,然后显示在终端窗口上。
cat命令的行为也会根据传递给它的标志而有所不同。例如,传递-n标志将使cat命令为所有输出行编号。根据您希望它的行为如何,可以传递任何可用于cat命令的标志。
如何使用cat命令
要使用cat命令,只需输入命令和要连接和读取的文件的名称。例如,要输出名为rainbow.txt的文件的内容,请执行以下命令。
cat rainbow.txt
您还可以添加标志以修改cat命令的行为。例如,您可以使用-n标志对所有输出行进行编号。在上面的示例中,我们可以通过执行以下命令对rainbow.txt中的所有输出行进行编号:
cat -n rainbow.txt
两个命令的输出如下所示:
要组合可以与cat命令一起使用的标志或选项,只需将它们依次编写,或者可以使用空格分隔它们。其中任何一种都可以。下面显示了使用-E标志的示例,该标志用于在输出行的末尾添加美元符号($),这在显示货币值时很有用。下面显示了使用cat命令组合多个标志的各种方式:
要使用cat命令连接和显示多个文件,只需依次编写文件名,用空格分隔。例如,要连接名为rainbow.txt和primary.txt的两个文件,请执行以下命令:
cat rainbow.txt primary.txt
命令的输出如下所示:
此操作完成后,两个文件rainbow.txt和primary.txt将保持不变。请注意,命令中文件的出现顺序决定了内容的显示方式。内容从第一个文件显示到最后一个文件。您还可以在连接和显示多个文件时添加标志,如下所示:
有关cat命令的最后一点需要注意的是,如果未向命令提供文件或提供了破折号(-),则cat命令将从标准输入中而不是文件中读取。标准输入是键盘。
因此,cat命令将简单地显示用户通过键盘输入的内容。要在实践中查看此内容,请执行以下命令:
cat
命令将带您到一个闪烁的光标,等待从键盘输入。输入任何文本,然后按Enter。您输入的任何内容将作为下面显示的标准输出输出:
按CTRL + C退出并停止向cat命令传递输入。
我们还可以使用cat命令连接并输出活动目录中特定类型的所有文件的内容。这是使用星号(*)通配符完成的。例如,要输出特定目录中文本文件(.txt)的所有内容,我们将执行以下代码:
cat *.txt
命令的输出如下所示:
cat命令的示例
除了cat命令的标准用法外,通过重定向,可以增强cat命令的功能。如前所述,cat命令默认将输出显示在终端屏幕上。
但是,通过重定向,我们可以将其输出重定向到另一个文件,而不是在屏幕上显示输出。
Linux中的输出重定向运算符是>(大于号,也称为chevron)。
例如,如果我们执行以下行:
cat rainbow.txt
rainbow.txt的内容将显示在屏幕上。
但是,如果我们执行
cat colors.txt > rainbow.txt
rainbow.txt中的内容将被输出到屏幕上。
rainbow.txt的内容不会显示在屏幕上。相反,它们将被重定向并写入colors.txt文件中。这是一种将内容从一个文件复制到另一个文件的绝佳方式。
在Linux中,输出重定向的默认行为是覆盖我们要重定向的文件中的所有内容。例如,在上面的示例中,rainbow.txt中的所有内容都将被来自colors.txt的内容覆盖。要保留要重定向的文件中的现有内容,并将新内容附加到其中,请在重定向时使用>>
请注意,将colors.txt的内容重定向到rainbows.txt后,colors.txt现在具有在rainbows.txt中找到的颜色。
要进一步使用cat命令的功能,我们可以结合重定向和cat命令的默认行为,即在不提供文件时从标准输入读取,以便使用cat命令创建文件并写入其中。
如果执行以下代码
cat > dark.txt
我们将重定向到dark.txt。由于我们没有提供要重定向到dark.txt的内容的文件,cat命令将期望从键盘输入。
因此,输入您想要存储在dark.txt中的任何文本,按Enter键进入下一行,完成后按CTRL + D保存您键入的内容到要重定向到的文件中。
由于我们正在重定向到一个不存在的文件,dark.txt将自动创建,并且通过键盘键入的内容将保存在文件中。这样,我们可以在创建文件时使用cat命令创建文件并写入文件。
操作的输出如下所示:
cat还可以用于将文本添加到文件的末尾。使用dark.txt,我们可以通过执行以下操作将更多颜色附加到其中:
cat >> dark.txt
然后,通过键盘输入要添加的其他信息,然后按CTRL + D保存并将新内容附加到dark.txt中,如下所示:
cat命令还可以用于将多个文件连接到一个文件中。此类操作的语法如下所示:
cat file1 file2 file3 > file4
文件1、文件2和文件3的内容将被连接在一起并写入文件4中。如果你不想覆盖文件4中的内容,你也可以使用>>。如果文件4不存在,它将被自动创建。
下面是一个示例:
将colors.txt和primary.txt的内容写入allColors.txt,我们执行以下操作:
cat colors.txt primary.txt > allColors.txt
您还可以使用cat命令将一个或多个文件的内容附加到另一个文件中。这可以通过在重定向输出时使用> >来完成。这样可以避免覆盖其他文件中已保存的内容。例如,要将primary.txt的内容附加到colors.txt中,请执行以下操作:
cat primary.txt >> colors.txt
该操作的结果如下所示:
结论
cat命令是一个非常有用的Linux命令,允许用户连接和显示文件的内容。该命令有多个标志,可以添加到其中以更改其行为。
通过重定向,可以极大地增强cat命令的功能,允许用户创建和复制文件,将多个文件连接成一个文件,并追加到现有文件中。要了解有关cat命令的更多信息,请访问其帮助页面。
您还可以探索一些系统管理员的。