Linux查看日志常用命令

2023-05-16

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

    最常用的:

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

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

    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 '/2020-10-24 22:16:21/,/2020-10-24 22:16:59/p' abc.log

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux查看日志常用命令 的相关文章

  • 除了 iptables 之外还有数据包管理实用程序吗? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个 Linux 实用程序 它可以根据一组规则更改网络数据包的有效负载 理想情况下 我会使用
  • 类似 wget 的 BitTorrent 客户端或库? [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 是否有任何
  • 让“git pull”在拉取不同分支时要求确认

    当同时处理许多项目和分支时 我偶尔会犯一些愚蠢的错误 比如拉入错误的分支 例如在分支上master I did git pull origin dangerous code并且有一段时间没有注意到这一点 这个小错误造成了很大的混乱 当我尝试
  • 访问 Linux 线程(pthreads)的本地堆栈

    我目前正在实现一个使用多线程但对总内存消耗有要求的应用程序 我希望有一个主线程执行 I O 并有几个工作线程执行计算 目前 我在主堆栈上有几个可供工作人员访问的数据结构 我使用 OpenMP 进行工作分配 由于主 工作者模式不能很好地与 O
  • 在 C 中使用 sqrtf():“未定义对‘sqrtf’的引用”

    我正在使用Linux Ubuntu 12 04 https en wikipedia org wiki Ubuntu version history Ubuntu 12 04 LTS 28Precise Pangolin 29 Precis
  • 是否有我可以运行的操作系统命令来确定是否在基于 Xen 的虚拟机内运行

    我可以在基于 Xen 的虚拟机中运行一个操作系统命令来告诉我它是一个虚拟机而不是物理机 我听说内核对此有一些自我意识智能 例如就像 ps 输出中的额外列之类的 我知道 vmstat 提供了 st 列 但我在运行 Linux 内核 2 6 1
  • Linux下的C#,Process.Start()异常“没有这样的文件或目录”

    我在使用 Process 类调用程序来启动程序时遇到问题 可执行文件的层次结构位于 bin 目录下 而当前工作目录需要位于 lib 目录下 project bin a out this is what I need to call lib
  • Nasm 打印到下一行

    我用 nasm Assembly 编写了以下程序 section text global start start Input variables mov edx inLen mov ecx inMsg mov ebx 1 mov eax 4
  • bash双括号问题

    我对 bash 脚本非常陌生 在使用双括号时遇到了问题 我似乎无法让它们在 Ubuntu Server 11 10 中工作 我的下面的脚本位于 if test sh 中 bin bash if 14 14 then echo FOO fi
  • 在键盘热插拔上加载模块

    我正在尝试学习如何为 Linux 系统编写模块和驱动程序 类似于this https unix stackexchange com questions 120839 usb kernel module does not load on de
  • 我在哪里可以学习如何使 C++ 程序与操作系统 (Linux) 交互

    我是一个 C 初学者 我想创建与操作系统交互的小程序 使用 Kubuntu Linux 到目前为止 我还没有找到任何教程或手册来让 C 与操作系统交互 在 PHP 中 我可以使用命令 exec 或反引号运算符来启动通常在控制台中执行的命令
  • 使用 MongoDB docker 镜像停止虚拟机而不丢失数据

    我已经在 AWS EC2 上的虚拟机中安装了官方的 MongoDB docker 映像 并且数据库上已经有数据 如果我停止虚拟机 以节省过夜费用 我会丢失数据库中包含的所有数据吗 在这些情况下我怎样才能让它持久 有多种选择可以实现此目的 但
  • ARM 系统调用的接口是什么?它在 Linux 内核中的何处定义?

    我读过有关 Linux 中的系统调用的内容 并且到处都给出了有关 x86 架构的描述 0x80中断和SYSENTER 但我无法追踪 ARM 架构中系统调用的文件和进程 任何人都可以帮忙吗 我知道的几个相关文件是 arch arm kerne
  • 将 stdout 作为命令行 util 的文件名传递?

    我正在使用一个命令行实用程序 该实用程序需要传递文件名以将输出写入 例如 foo o output txt 它唯一写入的东西stdout是一条消息 表明它运行成功 我希望能够通过管道传输写入的所有内容output txt到另一个命令行实用程
  • UDP 广播发送失败:在 Linux 2.6.30 上“网络无法访问”

    我用udp广播写了一个程序 代码段如下 struct sockaddr in broadcast addr socklen t sock len sizeof broadcast addr bzero broadcast addr sock
  • 如何在两个不同帐户之间设置无密码身份验证

    我们可以在两台机器的两种不同用途之间设置无密码身份验证吗 例如 计算机A有用户A 计算机B有用户B 我们可以设置密码 ssh 以便计算机 A 上的用户 A 使用其用户帐户 A 登录计算机 B 谢谢你 如果我理解你的问题 你能设置一下吗ssh
  • 编写多个mysql脚本

    是否可以在复合脚本中包含其他 mysql 脚本 理想情况下 我不想为包含的脚本创建存储过程 对于较大的项目 我想分层维护几个较小的脚本 然后根据需要组合它们 但现在 我很乐意学习如何包含其他脚本 source是一个内置命令 您可以在 MyS
  • 如何使用ffmpeg重叠和合并多个音频文件?

    我正在尝试将多个音频文件合并到一个文件中 但我可以使用以下命令来连接 而不是连接 ffmpeg v debug i file1 wav i file2 wav i file3 wav filter complex 0 0 concat n
  • 如何在 Linux x86_64 上模拟 iret

    我正在编写一个基于 Intel VT 的调试器 由于当 NMI Exiting 1 时 iret 指令在 vmx guest 中的性能发生了变化 所以我应该自己处理vmx主机中的NMI 否则 guest会出现nmi可重入错误 我查了英特尔手
  • sqlite 插入需要很长时间

    我正在将不到 200 000 行插入到 sqlite 数据库表中 我只是在终端中通过 sqlite3 使用一个非常简单的 sql 文件 我打赌它已经运行了至少 30 分钟 这是正常现象还是我应该关闭该过程并尝试不同的方法 sqlite中的插

随机推荐

  • Debian11安装redis报错解决方法

    1 报错需要安装C语言编译环境 执行apt install gcc 安装C语言编译环境 2 报错冲突 Conflicts 这里在执行apt install gcc命令后出现两gcc的版本 xff0c 这里执行apt install gcc
  • sqlserver在linux下安装

    前言 本次安装的sqlserver用的是sqlserver2017 linux环境是redhat Linux8 6 xff0c 本次采用是离线rpm安装 安装过程总体感觉比MySQL还要容易 xff0c 初步使用起来感觉和mysql差不多
  • DB2在Linux下静默安装

    目录 前言1 下载并上传db2压缩包到Linux2 检测db2安装环境3 安装db2数据库软件4 配置db2数据库系统用户5 创建数据库实例6 配置TCP IP通信服务7 配置数据库8 启动和关闭数据库实例9 修改权限10 数据库客户端和工
  • ubuntu12.04开启Framebuffer

    一 xff0e framebuffer概述 Framebuffer在Linux中是作为 设备 来实现的 xff0c 它是对图形硬件的一种抽象 xff0c 代表着显卡中的帧缓冲区 xff08 Framebuffer xff09 通过Frame
  • Redhat系列系统在线镜像源

    目录 前言Redhat7镜像源1 阿里云镜像源2 清华大学镜像源3 网易镜像源4 华为镜像源 Redhat8镜像源1 阿里云镜像源2 清华大学镜像源3 网易镜像源4 华为镜像源5 阿里云Rocky镜像源6 阿里云anolis镜像源 Redh
  • SuSE Enterprise linux安装mysql笔记

    目录 前言1 下载mysql二进制安装包2 解压MySQL安装包3 创建MySQL用户4 初始化mysql实例5 首次登录mysql6 修改登录密码 前言 本次安装MySQL的版本是8 0 30的二进制压缩包 xff0c 安装环境是SuSE
  • PostgresSql在linux下源码安装笔记

    目录 前言1 下载源码包并上传2 编译源码并安装3 本地登录PostgreSql4 客户端登录PostgreSql 前言 PostgreSql安装版本是14 5 xff0c 安装环境是Redhat Enterprise Linux serv
  • 判断两个IP地址(ipv4)是否在同一个网段

    我们通常会遇到的ip地址是这样的 xff1a ip地址 xff1a 192 168 227 205 子网掩码 xff1a 255 255 255 0 ip地址 xff1a 192 168 226 202 子网掩码 xff1a 255 255
  • 局域网搭建Linux镜像源

    前言 一般情况在企业的局域网内 xff0c 是不连接外网的 xff0c 所以像阿里云这样的在线的镜像源就用不了 xff0c 我相信大家个人在虚拟机里面连的就是阿里云镜像源了 xff0c 而且局域网内服务器较多的话 xff0c 本地挂载镜像源
  • ubuntu22.04 server安装

    目录 1 安装首页2 选择安装语言3 安装器4 选择键盘布局5 选择安装类型6 设置网络连接7 配置镜像源地址8 磁盘分区9 创建登录用户10 配置安装openssh server11 配置安装其他额外的软件12 开始安装系统13 重启系统
  • linux安装OceanBase数据库

    1 下载OceanBase数据库安装包 OceanBase官网下载页面 2 解压安装包并安装 tar xzf oceanbase all in one 4 0 0 0 beta 100120221102135736 el7 x86 64 t
  • linux下安装mysql客户端client

    1 下载mysql客户端 MySQL的Linux客户端官网下载地址 根据Linux的系统版本选择下载对应的rpm安装包 xff08 如下所示 xff09 xff0c 这里选择的是mysql8 0 27版本的redhat8系列的MySQL客户
  • linux下mysql的三种安装方法

    目录 1 离线安装 xff08 tar gz安装包 xff09 2 离线安装 xff08 rpm安装包 xff09 3 在线安装 xff08 yum安装 xff09 前言 安装环境 Redhat Enterprise Linux 8 1 离
  • linux+window+macos下的JDK安装

    1 Linux中安装JDK xff08 1 xff09 下载Linux版本的jdk压缩包 xff08 2 xff09 解压 tar zxvf 压缩包名 例如 xff1a tar zxvf jdk 8u251 linux x64 tar gz
  • bootstrap-table源码函数解读-sprintf

    var sprintf 61 function str var args 61 arguments flag 61 true i 61 1 str 61 str replace s g function var arg 61 args i
  • openGauss数据库的使用

    目录 前言1 启动 停止 重启数据库 xff08 1 xff09 极简版启动 停止 重启命令 xff08 2 xff09 企业版启动 停止 重启命令 2 登录数据库 xff08 1 xff09 登录数据库时的基本连接参数 xff08 2 x
  • openGauss数据库的安装(2.0.0极简版安装)

    目录 前言1 安装环境准备2 创建用户和用户组3 正式安装4 启动数据库实例并测试 前言 这里主要结合官网的文档 xff0c 安装系统环境是官网推荐的openEuler 20 03LTS openGauss数据库版本是openGauss 2
  • openGauss数据库安装(2.0.0企业版安装)

    目录 1 准备环境2 预安装3 正式安装4 启动并登录数据库 前言 此次数据库的系统安装环境仍然是openEuler20 03LTS openGauss安装版本是2 0 0版本 xff0c 相对于极简版安装 xff0c 确实多了一些工具 x
  • openEuler22.03安装

    目录 1 安装2 登录3 修改登录密码输错限制次数 1 安装 如果在此时没有设置网络 xff0c 那么需要在登录后可以编辑 etc sysconfig network scripts ifcfg ens160文件 xff0c 如下红框部分所
  • Linux查看日志常用命令

    第一种 xff1a 查看实时变化的日志 比较吃内存 最常用的 xff1a tail f app log 默认最后10行 xff0c 相当于增加参数 n 10 tail 200f app log 最后200行 xff0c 某一时刻往前推 Ct