CodeAE 发表于 2026-3-29 11:24

几个 Linux 命令教你秒级定位线上 Bug

线上出故障,还在傻傻地把 10G 日志下载到本地?还在用 vim 打开大文件导致服务器卡死?本文汇集了阿里、腾讯大厂运维都在用的 Linux 日志分析"神技"。从基础的 grep 到"上帝视角"的 awk,一文讲透,建议收藏!
一、grep - 快速定位关键词
grep "ERROR" app.log      => 查找所有错误日志
grep -i "error" app.log   => 忽略大小写查找
grep -n "ERROR" app.log   => 显示行号
grep -C 3 "ERROR" app.log   => 显示匹配行前后 3 行
grep -r "ERROR" ./logs      => 递归查找目录下所有文件二、tail - 实时查看日志tail -f app.log                  => 实时跟踪日志文件
tail -n 100 app.log                => 查看最后 100 行
tail -f app.log | grep "ERROR"   => 实时过滤错误日志三、awk - 日志分析神器
awk '/ERROR/{print $0}' app.log      => 打印包含 ERROR 的行
awk -F: '{print $1}' app.log         => 以冒号分隔,打印第一列
awk 'NR>=100 && NR<=200' app.log       => 打印 100-200 行四、sed - 流编辑器
sed -n '100,200p' app.log          => 打印 100-200 行
sed -n '/ERROR/p' app.log         => 打印包含 ERROR 的行
sed -i 's/old/new/g' file         => 替换文件内容五、组合拳 - 多个命令组合使用cat app.log | grep "ERROR" | wc -l                => 统计错误数量
cat app.log | grep "ERROR" | awk '{print $1}'   => 提取错误时间
find ./logs -name "*.log" -exec grep "ERROR" {} \; => 查找所有日志文件的错误
掌握这些命令,让你从日志小白变身运维大神!




页: [1]
查看完整版本: 几个 Linux 命令教你秒级定位线上 Bug