带有示例的 Linux 中的 wc 命令
wc 代表字数。顾名思义,它主要用于计数目的。
- 它用于找出文件参数中指定的文件中的行数、字数、字节数和字符数。
- 默认情况下,它显示四列输出。
- 第一列显示指定文件中存在的行数,第二列显示文件中存在的单词数,第三列显示文件中存在的字符数,第四列本身是作为参数给出的文件名。
句法:
wc [OPTION]... [FILE]...
让我们考虑一个具有名称state.txt和capital.txt分别包含印度国家和首都的名称5两个文件。
$ cat state.txt
Andhra Pradesh
Arunachal Pradesh
Assam
Bihar
Chhattisgarh
$ cat capital.txt
Hyderabad
Itanagar
Dispur
Patna
Raipur
在参数中只传递一个文件名。
$ wc state.txt
5 7 63 state.txt
OR
$ wc capital.txt
5 5 45 capital.txt
在参数中传递多个文件名。
$ wc state.txt capital.txt
5 7 63 state.txt
5 5 45 capital.txt
10 12 108 total
注意:如果在参数中指定了多个文件名,则命令将显示所有单个文件的四列输出,再加上一行显示参数中指定的所有文件的总行数、单词和字符数,后跟关键字total 。
选项:
1. -l:此选项打印文件中存在的行数。使用此选项 wc 命令显示两列输出,第一列显示文件中存在的行数,第二列本身表示文件名。
With one file name
$ wc -l state.txt
5 state.txt
With more than one file name
$ wc -l state.txt capital.txt
5 state.txt
5 capital.txt
10 total
2. -w:此选项打印文件中存在的字数。使用此选项 wc 命令显示两列输出,第一列显示文件中存在的单词数,第二列是文件名。
With one file name
$ wc -w state.txt
7 state.txt
With more than one file name
$ wc -w state.txt capital.txt
7 state.txt
5 capital.txt
12 total
3. -c:此选项显示文件中存在的字节数。使用此选项,它显示两列输出,第一列显示文件中存在的字节数,第二列是文件名。
With one file name
$ wc -c state.txt
63 state.txt
With more than one file name
$ wc -c state.txt capital.txt
63 state.txt
45 capital.txt
108 total
4. -m:使用-m选项 'wc' 命令显示文件中的字符数。
With one file name
$ wc -m state.txt
63 state.txt
With more than one file name
$ wc -m state.txt capital.txt
63 state.txt
45 capital.txt
108 total
5. -L: 'wc' 命令允许一个参数-L ,它可以用来打印出文件中最长(字符数)行的长度。因此,我们有最长字符行阿鲁纳恰尔邦在文件capital.txt文件state.txt和海德拉巴。但是使用此选项,如果指定了多个文件名,则最后一行,即额外的行,不显示总数,而是显示在单个文件的第一列中显示的所有值的最大值。
注意:字符是信息的最小单位,包括空格、制表符和换行符。
With one file name
$ wc -L state.txt
17 state.txt
With more than one file name
$ wc -L state.txt capital.txt
17 state.txt
10 capital.txt
17 total
6. –version:此选项用于显示当前在您的系统上运行的wc版本。
$ wc --version
wc (GNU coreutils) 8.26
Packaged by Cygwin (8.26-1)
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later .
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Paul Rubin and David MacKenzie.
wc 命令的应用
1.计算目录中存在的所有文件和文件夹:众所周知,unix中的ls命令用于显示目录中存在的所有文件和文件夹,当使用带有-l选项的wc命令进行管道传输时,它会显示所有文件和文件夹的数量当前目录中存在的文件和文件夹。
$ ls gfg
a.txt
b.txt
c.txt
d.txt
e.txt
geeksforgeeks
India
$ ls gfg | wc -l
7
2. 只显示一个文件的字数:我们都知道这可以用带有-w选项的wc命令来完成, wc -w file_name ,但是这个命令显示两列输出,一个是字数,另一个是文件姓名。
$ wc -w state.txt
7 state.txt
所以为了只显示第一列, wc -w命令的管道(|)输出到带有-c选项的剪切命令。或者使用输入重定向(<)。
$ wc -w state.txt | cut -c1
7
OR
$ wc -w < state.txt
7