Linux 命令:用 grep 与 find 组合快速排查日志

举报
yd_283969375 发表于 2026/11/01 00:21:02 2026/11/01
【摘要】 排查日志时,单独用 grep 只能在已知文件里找,单独用 find 只能按条件列文件,两者组合才能先缩小范围、再精确定位。一、先用 find 锁定文件find /var/log -type f -name "*.log" -mtime -1在 /var/log 下找最近一天修改过的日志文件。按名称、时间过滤,能避免把无关文件都翻一遍。二、再用 grep 过滤内容grep -rn "ERROR...

排查日志时,单独用 grep 只能在已知文件里找,单独用 find 只能按条件列文件,两者组合才能先缩小范围、再精确定位。

一、先用 find 锁定文件

find /var/log -type f -name "*.log" -mtime -1

在 /var/log 下找最近一天修改过的日志文件。按名称、时间过滤,能避免把无关文件都翻一遍。

二、再用 grep 过滤内容

grep -rn "ERROR" /var/log/app/

-r 递归,-n 显示行号;加 -i 忽略大小写,用 -C 3 显示前后各 3 行。

三、组合写法最实用

find /var/log -name "*.log" -exec grep -l "OutOfMemory" {} \;

-l 只输出含关键词的文件名。先拿到文件清单,再对单个文件深入分析,效率最高。

四、注意事项
先缩小范围再全文搜索,避免无限制递归;关键词尽量具体;确认时间范围后再下结论,避免把旧日志当成新故障。掌握 find 定位文件、grep 定位内容这一分工,日志排查就能从大海捞针变成按图索骥。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。