Linux常用查看日志命令
一、常用查看日志命令:
1、tail
1、命令格式:
tail 必要参数 文件
2、命令功能
tail 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用于查看日志文件后多少行日志信息。
使用tail -f 可以查看动态日志文件,tail -f filename可以把filename里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容.
tail -n 行数 可以显示指定行数信息
-f 循环读取
-q 不显示处理信息
-v 显示详细的处理信息
-c<数目> 显示的字节数
-n<行数> 显示行数 (相当于nl命令)
–pid=PID 与-f合用,表示在进程ID,PID死掉之后结束.
-q, –quiet, –silent 从不输出给出文件名的首部
-s, –sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒
3、示例
(1)实时监控100行日志
tail -100f test.log
(2)实时监控日志文件
tail -f test.log
(3)查询日志尾部最后10行的日志
tail -n 10 test.log
(4)查询10行之后的所有日志
tail -n +10 test.log
2、head
1、命令格式
head 必要参数 文件
2、命令功能
主要是查看日志文件前多少行日志信息
3、示例
(1)查询日志文件中的头10行日志;
head -n 10 test.log
(2)查询日志文件除了最后10行的其他所有日志
head -n -10 test.log
3、cat
1、命令格式
cat 必要参数 文件
2、命令功能
cat本身就是常用查看文件的命令,可以用于查看日志文件日志信息
cat -n test.log |grep "debug" 查询关键字的日志
grep关键字用于过滤
cat test.log | grep ‘关键字1’ | grep ‘关键字2’ 查询两个关键字同时出现
3、示例
1、按行号查看---过滤出关键字附近的日志
> cat -n test.log |grep "debug"
得到关键日志的行号
> cat -n test.log |tail -n +100|head -n 20
选择关键字所在中间行,查看这个关键字前10行和后10行的日志:
tail -n +100表示查询100行之后的日志
head -n 20 则表示在前面的查询结果里再查前20条记录
2、根据日期查询日志
> grep '2014-12-17 16:17:20' test.log
首先确定日志中是否有该时间,然后再查询
> sed -n '/2019-12-17 16:17:20/,/2020-12-17 16:17:36' test.log
日期必须是日志中打印出来的日志,否则无效
3、日志内容特别多,打印在屏幕上不方便查看时分页或者保存到文件中
(1)使用more和less命令
cat -n test.log |grep "debug" |more
分页打印了,通过点击空格键翻页
(2)使用 >xxx.txt 将其保存到文件中,到时可以拉下这个文件分析
cat -n test.log |grep "debug" >debug.txt