linux实用命令之日志查询

第一种:查看实时变化的日志(比较吃内存)

    最常用的:

    tail -f app.log  (默认最后10行,相当于增加参数 -n 10)

             tail -200f app.log  (最后200行,某一时刻往前推)

            tail -f catalina.out | grep --line-buffer "发送邮件" (实时查看tomcat的控制台日志中,含有“发送邮件”关键字的记录)

             tail -f catalina.out | grep --line-buffer -E "发送邮件|接收到"(grep筛选多个关键字:满足任意一个条件)

             tail -f catalina.out | grep --line-buffer "发送邮件"  | grep --line-buffer "异常报警" (grep筛选多个关键字:同时满足多个条件)

             注:–line-buffer : 每输出一行,就刷新一次

     Ctrl+c 是退出tail命令

    其他情况:

    tail -n 20 app.log  (显示app.log最后20行)

    tail -n +5 app.log  (从第5行开始显示文件)

第二种:搜索关键字附近的日志

    最常用的:

    cat -n filename |grep "关键字"

   

    其他情况:

    cat app.log | grep -C 5 '关键字'   (显示日志里匹配字串那行以及前后5行)

    cat app.log | grep -B 5 '关键字'   (显示匹配字串及前5行)

    cat app.log | grep -A 5 '关键字'   (显示匹配字串及后5行)

第三种:进入编辑查找:vi(vim) 

    1、进入vim编辑模式:vi app.log

    2、输入“/关键字”,按enter键查找

    3、查找下一个,按“n”即可( n 查找上一处错误日志  N 查找下一处错误日志)

              4、ctrl+f: 下翻一屏。

                   ctrl+b: 上翻一屏。

                   ctrl+d: 下翻半屏。

                   ctrl+u: 上翻半屏。

                   ctrl+e: 向下滚动一行。

                    ctrl+y: 向上滚动一行。

              5、ctrl+o回到搜索的地方

    退出:按ESC键后,接着再输入:号时,vi会在屏幕的最下方等待我们输入命令

    wq! 保存退出;

    q! 不保存退出;

    其他情况:

    /关键字    注:正向查找,按n键把光标移动到下一个符合条件的地方
    ?关键字    注:反向查找,按shift+n 键,把光标移动到下一个符合条件的

第四种:查看所有关键字相关的日志(more 和vi 类似)

             more app.log 默认打开所有的,从前往后

             常用的有H(获得帮助信息),Enter(向下翻滚一行),空格(向下滚动一屏),Q(退               出命令)

          1、more app.log | grep '关键字' 

          2、按Space键:显示文本的下一屏内容

          3、按B键:显示上一屏内容;

         4、按H键:显示帮助屏,该屏上有相关的帮助信息;

第五种 根据时间查看

         cat xxx.log |sed -n '/2022-7-10 22:16:21/,/2022-7-18 22:16:59/p' abc.log

<think>我们正在讨论Linux日志查看命令。根据引用内容,我们可以总结常用命令如tail、cat、sed等,并结合时间过滤等方法。 用户要求:查询日志文件的命令及使用方法 我们将按照以下结构回答: 1. 介绍常用日志查看命令(tail, head, cat, more, less, grep, sed) 2. 重点讲解实时监控日志(tail -f) 3. 按关键字过滤(grep) 4. 按时间范围过滤(sed) 5. 其他实用技巧(如查看大文件时用less,多文件搜索等) 6. 注意事项(如权限问题,日志文件路径等) 注意:引用中提到的命令有tail、cat、sed等,我们将结合这些命令进行说明。 同时,我们需要生成相关问题。</think>### Linux 日志查看命令及使用方法 在 Linux 系统中查看日志是运维和开发的核心技能,以下是常用命令及使用场景: #### 一、基础查看命令 1. **`tail` - 查看文件尾部内容** ```bash tail /var/log/syslog # 查看最后10行(默认) tail -n 50 /var/log/auth.log # 查看最后50行 tail -f /var/log/nginx.log # 实时追踪新增日志[^1] ``` 2. **`head` - 查看文件头部内容** ```bash head -20 /var/log/kern.log # 查看前20行 ``` 3. **`cat` - 完整输出文件内容** ```bash cat /var/log/boot.log # 适合小文件 ``` #### 二、高级过滤与搜索 4. **`grep` - 关键字过滤** ```bash grep "error" /var/log/syslog # 搜索包含"error"的行 grep -C 3 "timeout" /var/log/app.log # 显示匹配行及前后3行 tail -f /var/log/service.log | grep "404" # 实时过滤新日志 ``` 5. **`sed` - 按时间范围过滤** ```bash sed -n '/2023-10-01 14:00:00/,/2023-10-01 15:00:00/p' /var/log/access.log ``` #### 三、分页查看大文件 6. **`less` - 交互式分页查看**(推荐) ```bash less /var/log/large.log ``` - 操作:`空格`向下翻页,`b`向上翻页,`/error`搜索关键词,`q`退出 - 按`H`键显示帮助信息[^3] 7. **`more` - 基础分页工具** ```bash more /var/log/messages ``` #### 四、组合命令实战 - **实时监控并过滤错误日志**: ```bash tail -f /var/log/app.log | grep -E "ERROR|CRITICAL" ``` - **统计日志中错误次数**: ```bash grep -c "Failed" /var/log/auth.log ``` - **多文件联合搜索**: ```bash grep "Connection refused" /var/log/*.log ``` > **注意**: > - 日志路径通常在`/var/log/`目录,需`sudo`权限访问 > - 使用`journalctl`查看systemd服务的日志(如`journalctl -u nginx`) > - 大文件避免直接用`cat`,优先选`less`或`tail` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值