linux常用的查看日志的方法

1.实时刷新查看日志 tail

实时查看100行的数据
-f 循环读取,也就是实时获取
-n 编号
tail -100f demo.log

2.查看整个文件 cat (大文件慎用)

tac命令与cat命令相反,写法就是cat反过来写。
功能也是相反的,是从后往前显示内容。示例如下:
cat demo.log

  • cat > sample.txt 创建文件,然后输入内容,完毕按键Control+D保存退出
  • cat sample.txt 浏览文件内容

3.翻页查询日志 more

空格翻下一页,按b 则上一页
more demo.log

4.翻页加载,并随意查看日志 less

  • G - 移动到最后一行

  • g - 移动到第一行

  • q 退出

  • v 使用linux的编辑器来编辑文本,用法就跟vim一样

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

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

// PS:跳转到后一个关键字快捷键: N; 跳转到前一个关键字:shift + N
相比于more更加灵活,而且在查看前不会加载整个文件

5.搜索某些文本命令 grep

grep指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,grep指令会把含有范本样式的那一列显示出来
-i :忽略大小写的不同,所以大小写视为相同
-c :计算找到 '搜寻字符串' 的次数

grep "123456" demo.log
// 执行结果
line1 123456 aa
line2 123456 bb
line3 123456 cc
line4 123456 dd

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

// 执行结果
line1 123456 aa

// 查询不包含`aa`的日志内容
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

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

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

// 查询包含关键字`123456`或`aa`的日志内容
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

6. 排序展示文件信息和大小

ls -lrth 以为时间倒叙,并且展示占用空间大小来展示所有文件信息

你可能感兴趣的:(linux常用的查看日志的方法)