前言:

分析日志是定位问题的常用手段,但实际线上可能有大量日志,掌握一些常见查看、过滤和分析日志的命令能起到事半功倍的效果。下面列出工作中最常用的一些命令,可在具体使用是查看,尝试使用。实际使用使往往是下面几种命令的组合使用。

less 

特点:不加载文件(文件比较大的时候vim会比较卡顿),可以查找

less  error.log    直接打开

less -N error.log 显示行号打开

定位到某一行 ng,如100行为100g

定位最后一行 GG

搜索:

/                   使用一个模式进行搜索,并定位到下一个匹配的文本

n                  向前查找下一个匹配的文本

N                 向后查找前一个匹配的文本

tail

特点:从末尾显示指定行数,可持续打印

tail -400f error.log #监控最后400行日志文件的变化

等同于 tail -n 400 -f  error.log-f参数是实时)

grep

特点:按照正则表达式过滤

常用显示相关上线文

-B 行数    向后显示n行

-A 行数    向前显示n行

-C 行数    上下各n行

-i 忽略大小写

-v 反向匹配,选出没匹配上的内容

例如:grep "error" -A 5 -B 10 error.log 显示文件中 error和其前10行和后5行

sed

特点:按照设定格式修改、过滤等。如果把grep比作过滤器,那sed就是个修改器了。

sort

特点:自定义排序

awk

特点:统计

linux环境常用分析日志的几个命令的更多相关文章

  1. linux下常用的日志分析命令

    linux下常用的日志分析命令   本文介绍下,在linux中常用的一些分析日志的命令行或脚本,有需要的朋友参考下.     形如下面这样的access.log日志内容: 211.123.23.133 ...

  2. linux下常用的日志分析命令【转】

    形如下面这样的access.log日志内容: 211.123.23.133 – - [10/Dec/2010:09:31:17 +0800] “GET /query/trendxml/district ...

  3. Unix/Linux环境C编程入门教程(39) shell命令之系统管理

    df命令 用于检测文件系统的磁盘空间占用和空余情况,可以显示所有文件系统对节点和磁盘块的使用情况.命令的使用格式如下: df  [选项] 常用参数及含义如下表所示. df -a:显示所有文件系统的磁盘 ...

  4. Unix/Linux环境C编程入门教程(38) shell命令进阶演示

     1.w命令 该命令也可以查看登录当前系统的用户信息.与who命令相比,w命令的功能更强大,它不但可以显示当前有哪些用户登录到系统,还可以显示这些用户正在进行的操作,并给出更加详细和科学的统计数据 ...

  5. Linux系统常用的文件查看及处理命令

    常用的文本查看及处理命令 1.cat命令 (1).作用 连接文件并打印到标准输出设备上,cat经常用来显示文件的内容. (2).用法 1):用法:cat  (参数) 文件 2):常用参数 -n或-nu ...

  6. Linux环境常用命令

    bash host                    #查看IP对应机器名 hostname         #查看本机名         hostname –i     #查看本机IP mssh ...

  7. 分享一个linux环境下快速读取行数的命令

    最初是因为我需要计算一天的日志行数,如果用传统意义上的cat  a.log |wc -l的话因为是单线程,所以需要计算半小时的样子,后来同组的小伙伴教了我一个方法可以有效提高计算速度,将计算时间减半. ...

  8. Linux环境下执行java -jar xxx.jar命令如何让springboot项目在后台运行

    段落引用> 由于springboot内置了tomcat容器,我们通常会把项目打成jar或者war后直接使用java -jar xxx.jar命令去运行程序,但是当前ssh窗口被锁定或者按下ctr ...

  9. Windows和linux环境下按文件名和字符串搜索命令

    Windows 1.遍历C盘下所有txt 命令:for /r c:\ %i in (*.txt) do @echo %i 注释:for 循环的意思 /r 按照路径搜索 c:\ 路径 %i in   ( ...

随机推荐

  1. 给Repeater增加button事件,并绑定值

    ASPX页面: 增加两个事件,及传值. 1<asp:Repeater ID="rptList" OnItemDataBound="rptList_ItemDataB ...

  2. 如何让form2中的数据源,显示在form1的dataGridView控件中呢????

    定义一个static的静态变量,即可全局访问

  3. 前端校招知识体系之HTML5

    啥是HTML5?官方说HTML5 是下一代的 HTML... 本文主要介绍HTML5三个方面的知识,继续往下看看吧. 语义化标签 canvas&svg 响应式meta 一.语义化标签 语义化标 ...

  4. 理解PHP面向对象三大特性

    一.封装性 目的:保护类里面的数据,让类更安全, protected和private只能在类中或子类访问,通过public提供有限的接口供外部访问,封装是控制访问,而不是拒绝访问 封装关键字:publ ...

  5. CollectionView刷新问题,以及定时器与控制器的销毁问题

    1.CollectionView的刷新必须首先保证CollectionView有高度 注意事项:在cell中嵌套CollectionView,如果使用的是AutoLayout的话,一定要注意保证Col ...

  6. vlan的三种模式access、trunk、hybrid

    untag就是普通的ethernet报文,普通PC机的网卡是可以识别这样的报文进行通讯:tag报文结构的变化是在源mac地址和目的mac地址之后,加上了4bytes的vlan信息,也就是vlan ta ...

  7. Linux系统性能测试工具(八)——网络性能测试工具之netperf

    本文介绍关于Linux系统(适用于centos/ubuntu等)的网络性能测试工具-iperf.磁盘io性能测试工具包括: iperf: netperf 参考链接:https://www.jiansh ...

  8. socket客户端的备份机制

    SOCKET sockClient = socket(AF_INET, SOCK_STREAM, 0); //设定服务器的地址信息 SOCKADDR_IN addrSrv; addrSrv.sin_a ...

  9. python模块与包的详解

    一模块 1.什么是模块? 常见场景:一个模块包含python定义和声明的文件,文件名就是模块名字加上.py的后缀 2.为何要是用模块 如果你退出python解释器然后重新进入,那么你之前定义的函数或者 ...

  10. java.sql.SQLException: Unknown system variable 'query_cache_size'

    改为 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java< ...