Linux wc命令详解

来源:互联网 发布:mac校园网客户端 编辑:程序博客网 时间:2024/05/18 06:53
 
通常利用Linux的wc命令和其他命令结合来计算行和其他信息。
在Linux下用wc进行计数。返回文件的行数、字数、字节数等。
看个例子:
wc wc1.txt
3 5 16 wc1.txt
输出信息依次是:行数 字数 字节数 文件名称。再具体点,单个统计。
#wc -m filename:显示一个文件的字符数
#wc -l filename:显示一个文件的行数
#wc -L filename:显示一个文件中的最长行的长度
#wc -w filename:显示一个文件的字数
需要留意的:貌似wc统计的行算是用换行符来确定的。就是说最后一行要有换行符,最后wc的行数才是正确的,否则将会少一行。
为了说明这个问题,看一个perl的测试:
perl -e ‘print “a”‘|wc
      0       1       1
perl -e ‘print “a\n”‘|wc
      1       1       2
上面的例子中print命令将a打印出来,如果不带换行符\n,则认为这一行不存在。
有以下几点说明:
1:一个汉字占三个字节(未经验证,个人认为是两个字节),一个回车符等不可见字符也占一个字节
2:一行的末尾如果没有回车符,则不算是一行,也就是说,如果一个文件的最后一行末尾没有换行符,wc命令统计的行数会比实际行数少一,所谓实际行数是你所看到的行数,实际上,没有回车符,确实不能算作一行(注:若是在一个已存在的文本中,则默认为所有的行都有一个不可见的回车符)