为Linux初学者讲解wc命令

系统 Linux
在命令行工作时,有时您可能想要知道一个文件中的单词数量、字节数、甚至换行数量。如果您正在寻找这样做的工具,您会很高兴地知道,在 Linux 中,存在一个命令行实用程序,它被称为 wc ,它为您完成所有这些工作。在本文中,我们将通过简单易懂的例子来讨论这个工具。

为Linux初学者讲解wc命令

在命令行工作时,有时您可能想要知道一个文件中的单词数量、字节数、甚至换行数量。如果您正在寻找这样做的工具,您会很高兴地知道,在 Linux 中,存在一个命令行实用程序,它被称为 wc ,它为您完成所有这些工作。在本文中,我们将通过简单易懂的例子来讨论这个工具。

但是在我们开始之前,值得一提的是,本教程中提供的所有示例都在 Ubuntu 16.04 上进行了测试。

 

Linux wc 命令

wc 命令打印每个输入文件的新行、单词和字节数。以下是该命令行工具的语法:

  1. wc [OPTION]... [FILE]...

以下是 wc 的 man 文档的解释:

  1. 为每个文件打印新行、单词和字节数,如果指定多于一个文件,也列出总的行数。单词是由空格分隔的非零长度的字符序列。如果没有指定文件,或当文件为 `-`,则读取标准输入。

下面的 Q&A 样式的示例将会让您更好地了解 wc 命令的基本用法。

注意:在所有示例中我们将使用一个名为 file.txt 的文件作为输入文件。以下是该文件包含的内容:

  1. hi
  2. hello
  3. how are you
  4. thanks.

 

Q1. 如何打印字节数

使用 -c 命令选项打印字节数.

  1. wc -c file.txt

下面是这个命令在我们的系统上产生的输出:

如何打印字节数

如何打印字节数

文件包含 29 个字节。

 

Q2. 如何打印字符数

要打印字符数,请使用 -m 命令行选项。

  1. wc -m file.txt

下面是这个命令在我们的系统上产生的输出:

如何打印字符数

如何打印字符数

文件包含 29 个字符。

 

Q3. 如何打印换行数

使用 -l 命令选项来打印文件中的新行数:

  1. wc -l file.txt

这里是我们的例子的输出:

如何打印换行数

如何打印换行数

 

Q4. 如何打印单词数

要打印文件中的单词数量,请使用 -w 命令选项。

  1. wc -w file.txt

在我们的例子中命令的输出如下:

如何打印字数

如何打印字数

这显示文件中有 6 个单词。

 

Q5. 如何打印最长行的显示宽度或长度

如果您想要打印输入文件中最长行的长度,请使用 -l 命令行选项。

  1. wc -L file.txt

下面是在我们的案例中命令产生的结果:

如何打印最长行的显示宽度或长度

如何打印最长行的显示宽度或长度

所以文件中最长的行长度是 11。

 

Q6. 如何从文件读取输入文件名

如果您有多个文件名,并且您希望 wc 从一个文件中读取它们,那么使用-files0-from 选项。

  1. wc --files0-from=names.txt

如何从文件读取输入文件名

如何从文件读取输入文件名

如你所见 wc 命令,在这个例子中,输出了文件 file.txt 的行、单词和字符计数。文件名为 file.txt 的文件在 name.txt 文件中提及。值得一提的是,要成功地使用这个选项,文件中的文件名应该用 NUL 终止——您可以通过键入Ctrl + v 然后按 Ctrl + Shift + @ 来生成这个字符。

 

结论

正如您所认同的一样,从理解和使用目的来看, wc 是一个简单的命令。我们已经介绍了几乎所有的命令行选项,所以一旦你练习了我们这里介绍的内容,您就可以随时在日常工作中使用该工具了。想了解更多关于 wc 的信息,请参考它的 man 文档。 

责任编辑:庞桂玉 来源: Linux中国
相关推荐

2018-02-25 14:00:07

Linux命令whereis

2018-03-12 19:43:48

Linux命令 ldd

2018-02-24 10:38:06

Linux命令rmdir

2021-08-05 14:40:45

操作系统UNIXLINUX

2018-02-05 08:45:00

RHELCentOS 7MariaDB

2018-02-23 10:03:30

Linux命令mkdir

2018-04-08 14:47:06

Linux命令type

2009-11-18 09:30:43

2018-03-12 15:26:00

Linux命令tee

2012-01-31 21:10:25

Linux初学者发行版

2018-04-16 08:33:39

Linux命令uniq

2014-04-01 10:20:00

开源Rails

2022-09-05 15:36:39

Linux日志记录syslogd

2018-04-02 11:59:04

Linux命令ln

2022-11-16 16:02:59

Linux命令

2009-11-23 10:29:43

CISCO路由器教程

2011-04-07 14:09:45

2022-04-24 15:21:01

MarkdownHTML

2011-09-16 09:38:19

Emacs

2011-04-12 10:13:24

点赞
收藏

51CTO技术栈公众号