Lunix常用命令

这篇博客介绍了Linux系统中管理和分析日志文件的各种实用命令,包括实时查看动态日志、筛选错误日志、按关键字查询、查看指定条数、过滤特定范围以及日志的分页查看。同时,还讲解了如何利用管道进行and/or条件处理,以及如何处理大量日志数据。这些技巧对于系统监控、问题排查和性能分析至关重要。
摘要由CSDN通过智能技术生成

目录

1. 实时查看动态日志:

2. 查看错误日志:

3. 按关键字查询

4.查看日志显示条数

5.按行号查看—过滤出关键字附近的日志

6.选取日志中特定范围进行分析

7.日志内容特别多,打印在屏幕上不方便查看

8. 使用管道进行and or条件处理

1. 实时查看动态日志:

         tail -f 日志名称.log             eg:tail -f sysylog.log

2. 查看错误日志:

        grep -C50 ERROR *.log           eg:grep -c50 "Manager" *.log

3. 按关键字查询

        cat 日志名称.log |grep “关键字”        eg:cat *.log | grep "Manage"

4.查看日志显示条数

        ls -lrt

5.按行号查看—过滤出关键字附近的日志

        1)cat -n test.log |grep "ERROR" 得到关键日志的行号

        2)通常查找出错误日志 cat 服务应用名称-error.log | grep 'Exception', 这时候我们还有个需求就是输出当前这个日志的前后几行:

cat 服务应用名称-error.log | grep -B 5 'Exception' 显示Exception及前5行
cat 服务应用名称-error.log | grep -A 5 'Exception' 显示Exception及后5行
cat 服务应用名称-error.log | grep -C 5 'Exception' 显示file文件里匹配Exception字串那行以及上下5行
cat 服务应用名称-error.log | grep -n -B10 -A10 5 'Exception' 显示file文件里匹配Exception字串前后10行 

6.选取日志中特定范围进行分析

  • 1)cat -n test.log |tail -n +1000|head -n 20 从第1000行开始,显示20行
    • #  tail -n +1000表示查询1000行之后的日志
    • #  head -n 20 则表示在前面的查询结果里再查前20条记录

  • 2)cat 服务名称-error.log | head -n 1400| tail -n +1350 显示1350行到1400行
    (1)按日期截取 :一般在日志系统中都会记录打印日志的时间,通常我们非常需要查找指定时间端的日志:

    sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' test.log

    特别说明:该命令中的两个日期值必须是日志文件中包含的值,否则该命令无效.; 先 grep ‘2014-12-17 16:17:20’ test.log 来确定日志中是否有该 时间点

    (2)按行数截取
    sed -n ‘10000,20000p’ test.log
    sed -i '/关键词/d' catalina.out 删除包含关键词的行

7.日志内容特别多,打印在屏幕上不方便查看

        (1)使用more和less命令
        cat -n test.log |grep "ERROR" |more 这样就分页打印了,通过点击空格键翻页
        (2)使用 >xxx.txt 将其保存到文件中,到时可以拉下这个文件分析
        cat -n test.log |grep "ERROR" >error.txt


8. 使用管道进行and or条件处理

        and 使用管道符  |  实现 例如: grep -n '日志排查' test.log | grep '日志'
        or 用-E实现 例如: grep -n -E '日志排查|hello' test.log 满足两个关键字的都可以找出来

tail:  

   -n  是显示行号;相当于nl命令;例子如下:

        tail -100f test.log      实时监控100行日志

        tail  -n  10  test.log   查询日志尾部最后10行的日志;

        tail -n +10 test.log    查询10行之后的所有日志;

head:  

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

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

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

cat: 

    tac是倒序查看,是cat单词反写;例子如下:

        cat -n test.log |grep "订单号"   查询关键字的日志

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值