在Linux服务器中如何快速的从大日志文件中找出异常的部分并输出到文件中

在实际生产环境中,线上会出现各种问题,但是日志文件很大,不好直接打开,那么使用以下命令可快速的在文件中找到并输出

powershell 复制代码
grep -B 20 -A 20 "异常信息" ./catalina.out | sed 's/^\s*$//' > exception.log
  • -B 20表示在匹配行之前输出20行
  • -A 20表示在匹配行之后输出20行
  • "异常信息"是要搜索的字符串。
  • ./catalina.out是要搜索的文件。
  • sed 's/^\s*$//':使用sed命令,删除空行。
  • exception.log:输出结果写入的文件名。

从多个文件中搜索,有时没权限可加sudo执行,还可将以下命令写入脚本,传入行数和要查询的信息执行

powershell 复制代码
sudo grep -B $1 -A $1 $2 /home/file/log/new_log/8081/log_total.log /home/file/log/new_log/8082/log_total.log /home/file/log/new_log/8083/log_total.log | sed 's/^\s*$//' > exception.log
相关推荐
Web3探索者7 小时前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo9 小时前
Linux系统中网线与USB网络共享冲突
linux
荣--11 小时前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森12 小时前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜1 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
Sokach10152 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
SelectDB2 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
AlfredZhao2 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
zzzzzz3104 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode4 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏