Linux高效查日志命令介绍

说明:之前介绍Linux补充命令时,有介绍使用tail、grep命令查日志;

今天发现仅凭这两条命令不够,本文扩展介绍一下。

命令一:查看日志开头

powershell 复制代码
head -n 行数 日志路径

如下,可以查看程序启动是否正常;

命令二:查看日志末尾

powershell 复制代码
tail -n 行数 日志路径

能查看最新的日志信息,在日志行数非常多的情况下,这个命令很好用。不然,百万行的日志记录,用cat或者more,不可想象。

命令三:实时查看日志末尾

powershell 复制代码
tail -f -n 行数 日志路径

实时查看最新的部分日志记录,在程序打印日志量少的情况下,可以敲完命令,然后去触发BUG,能显示触发BUG的错误信息,很有用,也很局限,因为一般大项目,控制台会一直刷日志的。

命令四:查询关键词所在行

powershell 复制代码
grep -rina "关键词" 日志路径

查询关键词所在行的信息,这个日志用得不多,一般可以用来验证日志里是否打印了某行日志,用来判断程序执行情况。

比如,在代码里有以下代码;

java 复制代码
	log.info("进入xx方法");

就可以用这个作为关键词去搜一下,看有没有这行日志。平常,我用这个命令搜配置文件比较多,可以快速查看配置文件中某个配置项的设置。

注,引号里面的关键字就是模糊匹配的,不用在另外加百分号了,不要敲成下面这样。

powershell 复制代码
grep -rina "%url%" application-test.yml

命令五:查询关键词最后一次出现的位置

powershell 复制代码
grep -rina "关键词" 日志路径 | tail -n 行数

这个可以用来找最后一次出现异常的地方,可以找到当时出现的时间点,很有用。

命令六:查询关键词上下文内容

powershell 复制代码
grep -C 行数 "关键词" 日志路径

这个可以查看关键词附近的日志信息,能完整的看到异常附近的日志内容。其中-B指前几行,-A指后几行,而-C是上下各多少行。如下:

命令七:查询关键词最后一次出现的上下文内容

powershell 复制代码
grep -C 行数 "关键词" 日志路径 | tail -n 行数(结合前面,最好等于前面行数的2倍,因为前面是-C,上下各多少行)

这个命令值前面的组合,能找到最后一次出现异常时的上下文内容,快速定位到异常;

总结

本文介绍了查看日志的几个命令,可以高效查日志

相关推荐
荣世蓥21 分钟前
6. ARM_ARM指令寻址
linux·运维·arm开发
@daviiid1 小时前
关于adb shell登录开发板后terminal显示不完整
linux·adb
LuckyLay1 小时前
Ubuntu安装配置MySQL(远程登录)
linux·mysql·ubuntu·远程登录
sakabu1 小时前
Linux应用项目之量产工具(三)——文字系统
linux·学习·freetype·量产工具·linux项目
π大星星️1 小时前
linux笔记(防火墙)
linux·网络·笔记
ZZDICT2 小时前
ThinkServer SR658H V2服务器BMC做raid与装系统
运维·服务器·bmc·装系统·做raid
wanhengwangluo2 小时前
江苏显卡服务器有哪些好处?
运维·服务器
树下一少年2 小时前
服务器开机即占用大量内存,解决
linux·运维·服务器·sysctl.conf·vm.nr_hugepages
dtuling2 小时前
[Qt platform plugin问题] Could not load the Qt platform plugin “xcb“
linux·qt