CentOS里wc命令详解

分类:CentOS教程 阅读:26280 次

wc [word count]

名称wc - print the number of newlines, words, andbytes (word count)

in files

语法wc [option] files

功能简述统计指定文件中的字节数字数行数字符数。如果没有指定文件那么就从标准输入读取。并且此命令也会统计所指定文件的总数。

命令参数

-c 统计字节数

-l 统计行数

-w 统计字数。一个字被定义为由空白跳格或换行字符分隔的字字符串。也就是说只有遇见空格跳格换行才算是一个字。

-m 统计字符数。不能和-c同时使用。

-L 打印最长行的长度。

实例使用

查看文件的行数、字数、字节数

[root@LiWenTong ~]# wc 1.log

6 14 47 1.log

[root@LiWenTong ~]# cat 1.log

1

2

3

4

i belive i can fly

yes i cando it

[root@LiWenTong ~]# wc -w 1.log

14 1.log

[root@LiWenTong ~]# wc -l 1.log --->wc统计行数时是通过换行符所以在文件的末尾需要加上换行符要不wc统计会出现少一的情况。

6 1.log

[root@LiWenTong ~]# wc -c 1.log

47 1.log

用wc命令时只打印统计数字不打印文件名

[root@LiWenTong ~]# wc -w 1.log

14 1.log

[root@LiWenTong ~]# cat 1.log | wc ?w

14

用来统计当前文件数

[root@LiWenTong ~]# ls -l | wc ?l--》真的有13个文件。先通过查看然后再将输出的信息进行统计。Wc还可以用于许多的信息经过一定处理完成后的统计。应该在很多地方都会使用到统计功能。

13

[root@LiWenTong ~]# ll

total 56

-rwx------ 1 root root 47 Apr 28 15:58 1.log

-rw-r--r-- 1 root root 0 Apr 26 00:18 2.log

-rw-r--r-- 1 root root 0 Apr 26 00:18 3.log

-rw------- 1 root root 960 Apr 25 04:14 anaconda-ks.cfg

-rw-r--r-- 1 root root 3692 Apr 25 04:12 install.log.syslog

-rw-r--r-- 1 root root 17 Apr 26 00:40 log

lrwxrwxrwx 1 root root 5 Apr 26 00:20 log1 -> 1.log

-rw-r--r-- 1 root root 0 Apr 26 00:18 log2

-rw-r--r-- 1 root root 20480 Apr 27 15:13 log.tar

-rw-r--r-- 1 root root 169 Apr 27 15:24 log.tar.bz

-rw-r--r-- 1 root root 163 Apr 27 15:18 log.tar.gz

drwxr-xr-x 2 root root 4096 Apr 26 00:26 test

如果需要统计含有中文的文件又如何呢

[root@LiWenTong ~]# wc -w 1.txt --->wc就是使用空白跳格换行来判断字数的所以不管是不是中文如果遇见了空白跳格换行那么字数的计数都会加1.

3 1.txt

《wc之统计行数》

-------------------------------后续自我小结-----------------------------

有时希望能够通过文件中的行数或者是有涉及到行数的统计的时候通过wc 统计命令来完成是最快捷的方式了。其实在上篇的tail中有讲到操作内容的命令其实这就是一个操作内容的命令。一个统计的命令。那么这个命令就能够和很多显示内容的命令进行结合使用比如cat grep head tail 等等能够让内容显示出来或者能够传输内容的命令结合使用。

其实结合使用的模式就是 显示内容命令+内容操作命令 这样我们就能够做很多任务。

那么接下来比较重要的就是了解命令的参数了。操作命令有什么功能是截取、选择、统计、排除、删除、移动、等等功能。并且每个功能低下又有不同的参数比如按照字节、或者是倒序等等。

当然还有一些操作命令是针对系统的。比如显示IP、显示路由、添加路由、文件、目录、安装软件更新时间等反正只要你想对系统做什么操作或者是想获取什么信息都能够做的到的啦。只要你对这些命令足够的熟悉。那么命令针对的对象就是系统本身。

以上是我自己为了对命令的掌握有点感觉才这样瞎总结的。