您将在 Linux 上使用的最基本的命令之一是 cat。 乍一看似乎很神秘,但实际上使用起来很简单。
下面介绍如何在 Linux 上使用 cat 命令,以及何时不使用它。
什么是猫?
cat 是一个非常古老的实用程序,可以追溯到 Unix 的原始实现。 这个名字可能看起来很奇怪,但它是“连接”的缩写。 这是将一堆东西粘在一起的花哨术语。 在这种情况下,“东西”是指文件。 cat 是将一堆文本文件粘在一起的实用程序。 大多数人使用它将文件打印到屏幕或另一个文件中。
GNU 实现是大多数 Linux 发行版上默认安装的 coreutils 软件包的一部分,但 BusyBox 上也有一个在最小或实时发行版上很常见的版本。
将 cat 与标准 I/O 一起使用
cat 对标准输入和输出进行操作。 这意味着它将接受来自键盘或使用 I/O 重定向的其他程序的文本输入,并且您可以使用管道将其输出与另一个程序一起使用:
cat | some_program
请记住,许多其他 Linux 命令也接受标准 I/O,因此您可能不需要在管道中实际使用 cat。 稍后再谈。
它还接受来自命令行的文件作为参数。 您可以使用以下命令将整个文件打印到终端:
cat file.txt
您还可以使用 cat 打印多个文件:
cat file1 file2
这是 cat 的“连接”部分。
自己调用,猫会等你输入文本并按下 Enter,然后回显您在终端输入的任何内容,直到您按下 Ctrl + D. 您还可以使用重定向运算符将文本重定向到文件中:
cat > some_file
猫的无用用途
鉴于 cat 是一个如此基本的实用程序,很容易将它与管道一起使用。 Randal Schwartz 以他的 Perl 书籍而闻名,他创建了无用使用 cat (UUOC)“奖”(如在 时代埃里克森的主页) 并且偶尔会在 Usenet 上分发它们。
UUOC 的主要条件是使用 cat 将输出通过管道传输到已经将标准输入或文件作为参数的命令。 由于有这么多 Unix 和 Linux 命令这样做,使用 cat 管道标准输出或单个文件是浪费时间。 您应该查看手册页以了解您想要使用的任何命令,并确保它接受标准输入,这样您就不会“赢得”这个奖项。
如果您要查看长文件,最好使用像 Most 或文本编辑器这样的寻呼机。
cat:一个基本但不可或缺的 Linux 工具
cat 可能是一个基本命令,但就像许多基本的 Linux 工具一样,它可以方便地打印文本文件并将输出发送到其他程序。 如果您想在终端中添加更多颜色,您可能需要考虑 lolcat,这是另一个基于过滤器的程序,可在终端中生成彩虹色文本。