项目出现异常,要定位问题,查看日志是最常用的方法,在Linux系统查看一些日志文件,我们一般会使用tail
、cat
等命令,下面总结归纳一下这些常用的命令。
1、查看日志的方法
- tail:tail命令应该是使用最多的,一般用于查看文件尾部内容,语法是
tail [参数] [文件名]
,下面给出来自https://www.linuxcool.com/tail总结的参数:
# 实时查看100行数据
tail -100f test.logs
# 查看日志文件尾部最后10行数据
tail -n 10 test.logs
# 查看日志文件10行后的所有数据
tail -n +10 test.logs
- head:head命令是和tail命令相反的,tail命令是查看日志文件尾部的内容,head是查看日志文件头部的内容
# 查看日志文件头10行数据
head -n 10 test.logs
# 查看日志文件除了最后10行的所有数据
head -n -10 test.logs
- cat:cat命令也是常用于查看日志文件,不过cat命令适用于查看比较少的日志文件内容,日志文件太多容易出现滑屏的问题,所以需要加上more命令进行分页
cat -n test.logs |more
- vim:vim命令,是Linux系统用于文本编辑的,不过也可以用来查看日志文件,语法
vim test.logs
,查询关键字使用/
关键字,按Enter查找,查找下一个按n
,保存退出按esc键,输入!wq
,不保存!q
2、查找关键字
匹配查找关键字,需要结合grep命令使用,下面给出方法
cat log.log | grep "test"
tail log.log | grep "test"
grep -i "test" log.log
3、统计关键字数量
wc
命令用于统计文件的字节数、单词数、行数等信息,所以结合grep
命令可以对关键字出现次数进行统计
grep -o "word" test.logs | wc -l
4、sed命令的使用
补充,先介绍一下sed命令,sed命令最初由贝尔实验室开发,后被众多Linux系统接纳集成,sed是能够通过正则表达式对文件进行批量编辑查看等操作
下面给出sed命令的常用参数和作用
参数 | 作用 |
---|---|
-e 或--expression=<script> | 以指定的脚本来处理输入的文本文件 |
-f<script文件> 或--file=<script文件> | 以指定的脚本文件来处理输入的文本文件 |
-h 或--help | 显示帮助 |
-n 或--quiet 或--silent | 仅显示script 处理后的结果 |
-V 或--version | 显示版本信息 |
查找对应关键字并保存到1.logs
里
sed -n '/关键字/p' 5003.logs > 1.logs
查找对应时间段的日志,并输出到1.logs
文件里
sed -n '/2022-09-27 14:44/,/2022-09-27 14:54/p' 5003.logs > 1.logs
查找1到1000行的日志,并输出到1.logs
文件里
sed -n '1,1000'p 5003.logs > 1.logs
附录:Linux命令查询
https://www.linuxcool.com/