在 Linux 中统计日志行数,常用且实用的方法如下:
wcwc -l app.log
-l:只统计行数12345 app.log
只取数字:
wc -l < app.log
grep + wcgrep "ERROR" app.log | wc -l
忽略大小写:
grep -i "error" app.log | wc -l
统计多个关键字(或关系):
grep -E "ERROR|WARN" app.log | wc -l
sed 或 awk例如统计 2024-01-01 10:00 到 10:30:
awk '$0 >= "2024-01-01 10:00:00" && $0 <= "2024-01-01 10:30:00"' app.log | wc -l
zcatzcat app.log.2024-01-01.gz | wc -l
或统计错误数:
zcat app.log.*.gz | grep "ERROR" | wc -l
tail -ftail -f app.log | grep --line-buffered "ERROR"
(可配合 wc -l 手动观察)
awk '{print substr($0,1,13)}' app.log | sort | uniq -c
grep 过滤后再 wcless +F 实时查看如果你能提供:
我可以给你更精确的命令。