最常用方法是wc命令,可统计行数、单词数、字节数、字符数及最长行字符数;用-w/-l/-c/-m/-l选项分别提取,重定向可去除文件名。

最常用也最直接的方法是用 wc 命令,它专为这类统计设计,一行命令就能搞定行数、字数、字节数,还能按需单独提取某一项。
基础用法:一次看全三项
运行 wc filename.txt,输出格式固定为:
行数 单词数 字节数 文件名
例如:
表示该文件有 4 行、10 个单词、49 个字节。注意:wc 的“单词”以空格、制表符或换行符分隔,中文文本中若无空格,整段可能被算作一个“单词”。
Linux 性能分析与调优专家,覆盖 CPU、内存、磁盘 I/O、网络、内核参数、编译优化、容器/K8s。适用场景:系统卡顿/高负载、内存不足/OOM/Swap 高、CPU 异常/iowait 高。
只统计某一项:加对应选项
-
行数:用
wc -l filename.txt(-l来自 lines) -
单词数:用
wc -w filename.txt(-w来自 words) -
字节数:用
wc -c filename.txt(-c来自 bytes) -
字符数(含中文等多字节字符):用
wc -m filename.txt -
最长一行的字符数:用
wc -L filename.txt
不显示文件名,只输出数字
如果脚本里需要纯数字结果(比如赋值给变量),避免文件名干扰,可用输入重定向:
wc -l这样输出就只有 4,没有后面的 filename.txt。
处理多个文件或筛选后统计
- 统计当前目录所有
.log文件总行数:wc -l *.log(末尾会显示total行) - 只统计含 “error” 的行数:
grep "error" app.log | wc -l - 忽略大小写匹配再计数:
grep -i "warning" system.log | wc -l - 从标准输入读取(如管道或 here-document):
echo -e "a\nb\nc" | wc -l输出3










