在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
相关推荐
zhaotiannuo_19981 小时前
渗透测试之docker
运维·docker·容器
王正南2 小时前
kali-linux 虚拟机连接安卓模拟器
android·linux·运维·虚拟机连接模拟器·安卓模拟器,linux虚拟机
Web极客码2 小时前
如何在Ubuntu服务器上安装和配置BIND9
服务器·数据库·ubuntu
三不原则2 小时前
故障案例:容器启动失败排查(AI运维场景)——从日志分析到根因定位
运维·人工智能·kubernetes
吳所畏惧2 小时前
Linux环境/麒麟V10SP3下离线安装Redis、修改默认密码并设置Redis开机自启动
linux·运维·服务器·redis·中间件·架构·ssh
yueguangni2 小时前
sysstat 版本 10.1.5 是 CentOS 7 的默认版本,默认情况下确实不显示 %wait 字段。需要升级到新版sysstat
linux·运维·centos
funfan05173 小时前
【运维】MySQL数据库全量备份与恢复实战指南:从入门到精通
运维·数据库·mysql
西***63473 小时前
全兼容・高安全:KVM 一站式服务器远程监控与管理指南
服务器
-dcr3 小时前
49.python自动化
运维·python·自动化
萧曵 丶4 小时前
Linux 业务场景常用命令详解
linux·运维·服务器