李锋镝的博客 - LiFengdi.Com

  • 首页
  • 时间轴
  • 留言
  • 左邻右舍
  • 我的日常
  • 关于我
青衿之志 履践致远
霁月光风 不萦于怀
  1. 首页
  2. 原创
  3. 正文

Linux服务器查看日志命令总结1

2019年11月4日 16284点热度 1人点赞 0条评论

tail

用于输出文件中的尾部内容,实际应用如下:

// 显示文件倒数2行数据,并实时刷新新日志
tail -2f demo.log   

// 执行效果如下:
line9 56
line0 78

// 如果你需要停止,按Ctrl+C退出
// 假如查看的日志,实时刷新的日志量非常多的话,慎用!

head

跟tail是相反的,tail是看后多少行日志;例子如下:

// 查询日志文件中的头10行日志;
head -n 10  test.log   

//查询日志文件除了最后10行的其他所有日志;
head -n -10  test.log  

cat

命令用于连接文件并打印到标准输出设备上

// 显示文件全部内容
cat demo.log 

// 执行结果:
line1 123456 aa
line2 123456 bb
line3 123456 cc
line4 123456 dd
line5 654321 aa
line6 654321 bb
line7 12
line8 34
line9 56
line0 78

// 由于会显示整个文件的内容,所以如果文件大的话,慎用!

// 查询关键字的日志 得到关键日志的行号
cat -n test.log |grep "debug"   

// 选择关键字所在的中间一行
cat -n test.log |tail -n +92|head -n 20 
// 然后查看这个关键字前10行和后10行的日志:
// 表示查询92行之后的日志
tail -n +92
// 20 则表示在前面的查询结果里再查前20条记录
head -n 20 

// 分页打印,通过点击空格键翻页
cat -n test.log |grep "debug" |more 

// 使用 >xxx.txt 将其保存到文件中,到时可以拉下这个文件分析,例如:
cat -n test.log |grep "debug"  >debug.txt

tac

关于cat命令,还有一个与之类似但写法相反的命令:tac。写法就是cat反过来写

功能也是相反的,是从后往前显示内容。示例如下:

tac demo.log

// 执行结果:
line0 78
line9 56
line8 34
line7 12
line6 654321 bb
line5 654321 aa
line4 123456 dd
line3 123456 cc
line2 123456 bb
line1 123456 aa

more

类似cat,不过会以一页一页的形式显示,按空白键space就往下一页显示,按b键就会往回一页显示

more demo.log

// 执行结果(文件内容少的话,会直接显示全部,效果跟cat一样):
line1 123456 aa
line2 123456 bb
line3 123456 cc
--More--(15%)

less

less与more类似,但使用less可以随意浏览文件(使用键盘上的上下箭头),而且less在查看之前不会加载整个文件

less demo.log

// 执行结果(文件内容少的话,会直接显示全部,效果如下):
line1 123456 aa
line2 123456 bb
line3 123456 cc
line4 123456 dd
line5 654321 aa
line6 654321 bb
line7 12
line8 34
line9 56
line0 78
demo.log (END)

当使用less命令查看日志时,还可以对关键字进行查找。命令如下:

// 使用斜杠(/)加关键字的形式,向后查找关键字,如查找关键字:123456
/123456   

// 使用问号(?)加关键字的形式,向前查找关键字,如查找关键字:line3
?line3

// PS:跳转到后一个关键字快捷键: N; 跳转到前一个关键字:shift + N

grep

grep指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,grep指令会把含有范本样式的那一列显示出来

// 查询包含关键字<code>123456</code>的日志内容
grep "123456" demo.log

// 执行结果
line1 123456 aa
line2 123456 bb
line3 123456 cc
line4 123456 dd

// 查询包含关键字<code>123456</code>且包含<code>aa</code>的日志内容
grep "123456" demo.log | grep "aa"

// 执行结果
line1 123456 aa

// 查询不包含<code>aa</code>的日志内容
grep -v "aa" demo.log

// 执行结果
line2 123456 bb
line3 123456 cc
line4 123456 dd
line6 654321 bb
line7 12
line8 34
line9 56
line0 78

// 查询包含关键字<code>123456</code>但不包含<code>aa</code>的日志内容
grep "123456" demo.log | grep -v "aa"

// 执行结果
line2 123456 bb
line3 123456 cc
line4 123456 dd

// 查询包含关键字<code>123456</code>或<code>aa</code>的日志内容
grep "123456\|aa" demo.log
或者
grep -E "123456|aa" demo.log

// 执行结果
line1 123456 aa
line2 123456 bb
line3 123456 cc
line4 123456 dd
line5 654321 aa

当你通过grep查找关键字,但是还是有非常多匹配的结果时,可以组合前面的less或more实现分页显示,示例如下:

grep "123456" demo.log | less
grep "123456" demo.log | more

grep "123456\|aa" demo.log | less
grep "123456" demo.log | grep -v "aa" | less
除非注明,否则均为李锋镝的博客 - LiFengdi.Com原创文章,转载必须以链接形式标明本文链接
本文链接:https://www.lifengdi.com/archives/article/1475
本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: Linux 命令 日志
最后更新:2019年11月4日

李锋镝

既然选择了远方,便只顾风雨兼程。

打赏 点赞
< 上一篇
下一篇 >
guest
您的姓名(必填)
您的邮箱(必填)
您的站点
guest
您的姓名(必填)
您的邮箱(必填)
您的站点
0 评论
Inline Feedbacks
查看所有评论
支付宝红包

人间有味是清欢。

最新 热点 随机
最新 热点 随机
小记 hnswlib installation failed 一眨眼就三年了…… redis异常记录 今天,是我的第三十一个生日 回忆是一条没有尽头的路
今天,是我的第三十一个生日阳了...开工啦~国庆节过的也很累~~一眨眼就三年了……今天天气很好~心情也不差~
如何提升微服务的幸福感 数据库事务的一点简单总结 SpringBoot和SpringCloud版本对应 分布式架构知识体系(超全核心知识大图) 醒醒~补个税了 从零搭建Spring Cloud Gateway网关(一)
最近评论
李锋镝 发布于 2 天前(06月06日) 确实很烧脑,头发头快秃了
王光卫博客 发布于 3 天前(06月06日) 排错也是个耐心的工作啊,ChatGPT有时候也能解决简单的问题,复杂了又要烧脑
NK007 发布于 1 周前(06月01日) 啥三年啊
李锋镝 发布于 2 周前(05月22日) 兄弟开玩笑了~
王光卫博客 发布于 3 周前(05月22日) :douyin.19: 博主都在规划下个三年了,我当前还没活好
有情链接
  • 志文工作室
  • 临窗旋墨
  • 旧时繁华
  • 城南旧事
  • 强仔博客
  • 林三随笔
  • 徐艺扬的博客
  • 云辰博客
  • 韩小韩博客
  • 知向前端
  • 阿誉的博客
  • 林羽凡
  • 情侣头像
  • 哥斯拉
  • 博客录

COPYRIGHT © 2022 lifengdi.com. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

豫ICP备16004681号-2