Linux 查看日志文件命令小记

速记:

  • cat从第一行開始显示档案内容。
  • tac从最后一行開始显示档案内容。
  • more分页显示档案内容,从前向后读取文件,最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,在启动时就加载整个文件
  • lessmore相似,使用pageup,pagedown等按键的功能,支持向前向后翻页,向前向后搜索,不会加载整个文件
  • head仅仅显示前面几行
  • tail仅仅显示后面几行
  • -n行:
    • cat命令中表示带行号显示档案内容
    • head命令中表示头几行,不加-n默认10行
    • tail命令中表示尾几行,不加-n默认10行,如-n +5行号前面带加号,表示从第多少行开始

1. 实时查看日志

tail 命令

将指定的文件的最后部分输出到标准设备,-f参数用于监视文件增长并主动打印出来

tail -f filename

先打印最后10行日志,并主动打印出实时新增的部分

tail -n 10 -f filename

中断当前刷新日志的 tail 进程:Ctrl+c

2. 查找日志

2.1 按行查找

sed 命令(sed命令的特殊简单用法)

查看文件中第5到第10行

sed -n '5,10p' filename

cat 命令

查看整个文件

cat filename

一页一页翻看

#只能向后翻页
cat filename | more
#可前后翻页
cat filename | less

tail 命令

查看文件最后10行

tail -n 10 filename

head 命令

查看文件中前10行

head -n 10 filename

cat,tail,head 组合命令

查看文件中的第5到第10行的两种方式

从第5行开始看后面部分的前5行

cat filename | tail -n +5 | head -n 5

查看第10行中的后5行

cat filename | head -n 10 | tail -n 5

2.2 搜索日志

查询包含某关键字的字段并分页查看

grep -i -n --color -C 2 '程序员' filename | more

参数:

  • -i不区分大小写
  • -n显示行号
  • --color两个横杠,关键词高亮显示
  • -A参数大写,显示匹配行并同时显示其后n行,after
  • -B参数大写,显示匹配行并同时显示前面n行,before
  • -C参数大写,显示匹配行并同时显示前面各n行,context
  • -c参数小写,显示匹配到多少行,不显示具体内容

2.3 搜索部分行内容日志

在第2000行到第2500行之间搜索带“程序员”关键字的日志,并显示匹配行上下各两行,显示行号并分页显示

cat -n filename | tail -n +2000 | head -n 500 | grep -i --color -C 2 '程序员' | less

3. 导出部分日志

通过上面的查询我们可以查出内容,但是内容复杂可以先导出到其他文件,再慢慢分析

在第2000行到第2500行之间搜索带“程序员”关键字的日志,并显示匹配行上下各两行,显示行号,将搜索结果写入到nb.log中

cat -n filename | tail -n +2000 | head -n 500 | grep -i --color -C 2 '程序员' >> nb.log

发表评论

发表回复

*

沙发空缺中,还不快抢~