Linux 提供了大量的命令行工具来帮助简化您的日常任务。其中一个工具是 wc 命令。

当您需要知道文件中的字数甚至特定目录中存在多少个文件时,wc 是您的首选命令。但这并不是 wc 命令的全部功能。请继续阅读以发现什么是 wc 命令以及如何在 Linux 上有效地使用它。

wc 命令打印出文件或输出中的行数、字数、字符数或字节数。以下是如何利用它来发挥自己的优势。

什么是 wc 命令?

wc 命令是 word count 的缩写。它是一个命令行工具,用于计算输出中的字数、行数、字符数和字节数。它预装在每个基于Unix 和 Linux 的操作系统中,因此您无需手动安装它。

wc 命令语法

要使用wc,您需要指定文件或文本输出以及要使用的命令选项。wc 命令的基本语法是:

 wc [OPTION] [FILE]

有许多选项可用于与命令一起使用,所有这些选项我们稍后将讨论。要获取有关 wc 命令的命令行帮助,请通过运行以下命令检查其手册页:

man wc

如何使用 wc 命令

对于此示例,请创建一个文件:linuxmi.txt。在此文件中,粘贴以下文本:

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one and preferably only one obvious way to do it.[a]
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than right now.[b]
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea – let's do more of those!

这是 Python之禅,是 Tim Peters 写的一套 19 条指导原则,用来写出简单、优雅、简洁的 Python 代码。

如果使用 cat 命令创建文件,请在粘贴文本之前保留一个空行。

使用默认 wc 命令

默认情况下,当您对文件或输出使用 wc 命令时,它会打印出输出中存在的行数、字数和字节数。

尝试使用 linuxmi.txt 通过在终端中执行以下命令:

linuxmi@linuxmi:~/www.linuxmi.com$ wc linuxmi.txt

结果:

 19 137 830 linuxmi.txt

您将看到它输出四列,分别包含行数、字数、字节数和文件名。

要计算文件或输出中存在的行数,请使用 -l 或 –lines 选项。语法如下所示:

linuxmi@linuxmi:~/www.linuxmi.com$ wc -l linuxmi.txt

结果:

19 linuxmi.txt

它显示文件中有 19 行,并且还打印出文本文件的名称。

若要计算文件中的字数,请使用 -w 或 –words 选项。试试看:

linuxmi@linuxmi:~/www.linuxmi.com$ wc -w linuxmi.txt

结果:

137 linuxmi.txt

显示字节数

您可以使用 wc 命令以及 -c 或 –-bytes 选项来确定文件中的确切字节数。执行以下命令以试用:

linuxmi@linuxmi:~/www.linuxmi.com$ wc -c linuxmi.txt

结果:

830 linuxmi.txt

要打印出文件中的字符数,请使用 -m 或 –chars 选项。语法如下所示:

linuxmi@linuxmi:~/www.linuxmi.com$ wc -m linuxmi.txt

结果:

824 linuxmi.txt

如果需要知道文件中最长行的长度(该行中的字符数),请将 -L 或 –max 行长度选项与 wc 命令配合使用。它看起来像这样:

linuxmi@linuxmi:~/www.linuxmi.com$ wc -L linuxmi.txt

结果:

70 linuxmi.txt

对多个文件使用 wc 命令

您可以将 wc 命令用于多个文件或输入。为此,您需要再创建两个文件。第一个文件是 zimu.txt,其中包含字母表的列表,而第二个文件是shuzi.txt,包含从 1 到 10 的数字列表。

或者,您可以使用任意两个文本文件。让我们来试试吧:

linuxmi@linuxmi:~/www.linuxmi.com$ wc linuxmi.txt zimu.txt shuzi.txt

结果如下图:

前三行包含每个文件的行数、字数和字节数,最后一行包含每列的总和。

将 wc 命令与其他 Linux 命令一起使用

您可以通过管道命令将 wc 与其他命令一起使用。管道符号将一个命令的输出作为输入重定向到另一个命令。

计算目录中的文件或文件夹数

为此,您可以使用 ls 命令列出目录中的文件数,然后将输入通过管道传输到 wc 命令中。例如,要打印某一目录上的文件数,请执行以下命令:

linuxmi@linuxmi:~/www.linuxmi.com$ ls www.linuxmi.com | wc -l

计算系统上正在运行的进程数

进程是您的计算机正在处理或当前正在运行的任务或程序。执行命令或打开应用程序时,该应用程序将注册为进程。

要计算进程数,请使用带有 wc 的 ps 命令。在这里,尝试一下:

linuxmi@linuxmi:~/www.linuxmi.com$ ps | wc -l

使用 wc 尝试其他 Linux 命令

Linux 上有很多可用的命令,它们具有非常独特的功能,并使整体 Linux 体验无缝衔接。您只需要知道它们是什么以及如何使用它们!现在就开始你的 Linux 命令之旅吧!

发表回复