Skip to content

wc 命令

wc(word count)用于统计文件的行数、单词数和字节数。

基本语法

bash
wc [选项] [文件...]

常用选项

选项说明
-l统计行数
-w统计单词数
-c统计字节数
-m统计字符数
-L显示最长行的长度

基本用法

统计行数

bash
# 统计文件行数
wc -l file.txt

# 统计多个文件
wc -l file1.txt file2.txt

# 只显示数字
wc -l < file.txt

统计单词数

bash
wc -w file.txt

统计字节数

bash
wc -c file.txt

统计字符数(支持多字节字符)

bash
wc -m file.txt

显示全部统计(行数、单词数、字节数)

bash
wc file.txt
# 输出:  10  50 300 file.txt(行 词 字节 文件名)

与管道结合

统计命令输出行数

bash
# 统计目录下文件数量
ls | wc -l

# 统计进程数量
ps aux | wc -l

# 统计匹配行数
grep "error" log.txt | wc -l

统计字符串长度

bash
echo -n "hello world" | wc -c   # 输出:11
echo -n "hello world" | wc -m   # 输出:11

实用示例

批量统计目录下所有文件行数

bash
wc -l *.txt

统计代码行数(排除空行)

bash
grep -v '^$' script.sh | wc -l

统计日志中错误数量

bash
grep "ERROR" /var/log/app.log | wc -l

获取最长行的长度

bash
wc -L file.txt

在脚本中使用

bash
#!/bin/bash

file="data.txt"
lines=$(wc -l < "$file")
words=$(wc -w < "$file")

echo "文件 $file$lines 行,$words 个单词"

# 判断文件是否为空
if [ "$lines" -eq 0 ]; then
    echo "文件为空"
fi