在麒麟系统中用wc -l统计代码文件行数:单文件执行wc -l filename;批量用wc -l *.c或find命令递归统计;过滤空行和注释需组合grep;脚本调用时用cat | wc -l | awk '{print $1}'提取纯数字。

在麒麟系统(基于Linux内核,兼容主流GNU工具链)中快速统计指定代码文件的行数,核心是调用标准命令行工具,无需安装额外软件,直接在终端执行即可获得准确结果。
用wc -l直接统计单个文件行数
打开终端,进入代码文件所在目录,输入:
wc -l filename.c
例如统计main.py的行数:
wc -l main.py
输出形如“【47 main.py】”,左侧数字即为该文件的行数。注意:wc -l 统计的是换行符\n的数量,若文件末尾无换行符,最后一行仍会被计入——这是POSIX标准行为,不是错误。
批量统计多个代码文件(按扩展名筛选)
方法一:使用通配符一次性处理当前目录下所有.c文件
wc -l *.c
方法二:递归统计子目录中所有.py文件(需bash 4.0+且开启globstar)
shopt -s globstar && wc -l **/*.py
方法三:更通用可靠的递归方式(兼容所有shell)
find . -name "*.java" -type f -exec wc -l {} +
该命令会列出每个.java文件的行数,并在末尾追加total行。如果只要总数不看明细,改用:
find . -name "*.js" -type f -exec cat {} \; | wc -l
排除空行和注释行(适用于代码净行数估算)
第一步:过滤掉纯空行和仅含空白字符的行
grep -v '^[[:space:]]*$' code.cpp
第二步:再剔除以//或/*开头的注释行(C/C++/Java风格)
grep -v '^[[:space:]]*//' | grep -v '^[[:space:]]*/\*'
第三步:将两步合并并统计
grep -v '^[[:space:]]*$' code.cpp | grep -v '^[[:space:]]*//' | grep -v '^[[:space:]]*/\*' | wc -l
⚠️ 注意:此方法无法识别跨行注释或引号内的伪注释,仅作粗略参考;真实代码度量建议用cloc等专用工具。
只输出纯数字(适合脚本调用)
步骤一:用cat读取文件内容,避免wc输出文件名
cat script.sh | wc -l
步骤二:用awk提取第一列数字并去除首尾空格
cat script.sh | wc -l | awk '{print $1}'
这一步确保返回值是干净的整数,可直接赋值给Shell变量,例如:
LINE_COUNT=$(cat app.js | wc -l | awk '{print $1}')











