wc 命令是 Linux 下 Word Count 的缩写,用来统计文件中的字节数,字数,行数等等。
命令格式
非常简单
wc [options] files
选项
-c, --bytes 统计字节数
-l, --lines 统计行数
-m, --chars 统计字符数,不能和 -c 一起使用
-w 统计字数,一个字定义为由空白、空格或者换行分割的字串
-L, --max-line-length 最长行的长度
例子
查看文件字节数、字数、行数
命令:wc file.txt
比如有如下文件:
cat file.txt
Linux
Debian
Ubuntu
Linux Mint
命令有如下结果
wc file.txt
4 5 31 file.txt
wc -l file.txt
4 file.txt
wc -c file.txt
31 file.txt
wc -w file.txt
5 file.txt
wc -m file.txt
31 file.txt
wc -L file.txt
10 file.txt
直接使用命令 wc file.txt
输出的内容对应
wc file.txt
4 5 31 file.txt
行数 单词数 字节数 文件名
不打印文件名
使用管道命令或者重定向来避免命令打印文件名
wc 命令如果从管道命令或者重定向命令中接受输入,则不产生文件名输出,参考如下例子:
当 wc 接受文件名作为参数时,打印出文件名
wc -l /etc/passwd
41 /etc/passwd
当文件以管道形式或者标准输入时不打印文件名
cat /etc/passwd | wc -l
41
unusual redirection, but wc still ignores the filename
< /etc/passwd wc -l
41
typical redirection, taking standard input from a file
wc -l < /etc/passwd
41
由此可以看到,当文件被当成 wc 的参数传递过去的时候会打印出文件名,而其他标准输入时候不会打印出文件名。某些情况下,你可能希望打印文件名,因此有必要知道何时会打印文件名,而何时不会打印。