精华内容
下载资源
问答
  • 在标准unix/linux下的grep命令中,通过以下参数控制上下文的显示: --显示file文件(fileName为具体的文件名字,请自行调整)中匹配keyword字串那行以及上下10行 grep -C 10 keyword fileName --显示keyword及前10...

    在标准unix/linux下的grep命令中,通过以下参数控制上下文的显示:
     

    --显示file文件(fileName为具体的文件名字,请自行调整)中匹配keyword(关键字)字串那行以及上下10行
    grep -C 10 keyword fileName 
    
    --显示keyword及前10行
    grep -B 10 keyword fileName 
    
    --显示keyword及后10行
    grep -A 10 keyword fileName 
    

    --color=auto,可用于关键字高亮显示,例如:

    grep -C 10 keyword fileName  可优化为 
    grep -C 10 keyword  --color=auto fileName 

    通过这些命令就能根据关键字快速查到你想看到的日志内容,定位问题,觉得有帮助的多多点赞支持!

    展开全文
  • linux通过grep根据关键字查找日志文件上下文 1、在标准unix/linux下的grep命令中,通过以下参数控制上下文的显示: grep -C 10 keyword catalina.out 显示file文件中匹配keyword字串那行以及上下10行 grep -B 10 ...

    linux通过grep根据关键字查找日志文件上下文

    1、在标准unix/linux下的grep命令中,通过以下参数控制上下文的显示:

    grep -C 10 keyword catalina.out 显示file文件中匹配keyword字串那行以及上下10行

    grep -B 10 keyword catalina.out 显示keyword及前10行

    grep -A 10 keyword catalina.out 显示keyword及后10行

    2、查找的结果比较大时,为了方便定位问题,也可以重定向到文件中,比如:

    grep -C 10 keyword catalina.out > aaa.txt

    3、统计包含某个关键字的个数

    grep -o keyword catalina.out | wc -l

    4、如果一行最多一个关键字,可以简写为:
    grep -c keyword catalina.out

    5、查看grep版本的方法是

    grep -V

    Grep命令详细说明:

    Usage: grep [OPTION]… PATTERN [FILE]…
    Search for PATTERN in each FILE or standard input.
    PATTERN is, by default, a basic regular expression (BRE).
    Example: grep -i ‘hello world’ menu.h main.c

    Regexp selection and interpretation:
    -E, --extended-regexp PATTERN is an extended regular expression (ERE)
    -F, --fixed-strings PATTERN is a set of newline-separated fixed strings
    -G, --basic-regexp PATTERN is a basic regular expression (BRE)
    -P, --perl-regexp PATTERN is a Perl regular expression
    -e, --regexp=PATTERN use PATTERN for matching
    -f, --file=FILE obtain PATTERN from FILE
    -i, --ignore-case ignore case distinctions
    -w, --word-regexp force PATTERN to match only whole words
    -x, --line-regexp force PATTERN to match only whole lines
    -z, --null-data a data line ends in 0 byte, not newline

    Miscellaneous:
    -s, --no-messages suppress error messages
    -v, --invert-match select non-matching lines
    -V, --version display version information and exit
    –help display this help text and exit

    Output control:
    -m, --max-count=NUM stop after NUM matches
    -b, --byte-offset print the byte offset with output lines
    -n, --line-number print line number with output lines
    –line-buffered flush output on every line
    -H, --with-filename print the file name for each match
    -h, --no-filename suppress the file name prefix on output
    –label=LABEL use LABEL as the standard input file name prefix
    -o, --only-matching show only the part of a line matching PATTERN
    -q, --quiet, --silent suppress all normal output
    –binary-files=TYPE assume that binary files are TYPE;
    TYPE is ‘binary’, ‘text’, or ‘without-match’
    -a, --text equivalent to --binary-files=text
    -I equivalent to --binary-files=without-match
    -d, --directories=ACTION how to handle directories;
    ACTION is ‘read’, ‘recurse’, or ‘skip’
    -D, --devices=ACTION how to handle devices, FIFOs and sockets;
    ACTION is ‘read’ or ‘skip’
    -r, --recursive like --directories=recurse
    -R, --dereference-recursive
    likewise, but follow all symlinks
    –include=FILE_PATTERN
    search only files that match FILE_PATTERN
    –exclude=FILE_PATTERN
    skip files and directories matching FILE_PATTERN
    –exclude-from=FILE skip files matching any file pattern from FILE
    –exclude-dir=PATTERN directories that match PATTERN will be skipped.
    -L, --files-without-match print only names of FILEs containing no match
    -l, --files-with-matches print only names of FILEs containing matches
    -c, --count print only a count of matching lines per FILE
    -T, --initial-tab make tabs line up (if needed)
    -Z, --null print 0 byte after FILE name

    Context control:
    -B, --before-context=NUM print NUM lines of leading context
    -A, --after-context=NUM print NUM lines of trailing context
    -C, --context=NUM print NUM lines of output context
    -NUM same as --context=NUM
    –group-separator=SEP use SEP as a group separator
    –no-group-separator use empty string as a group separator
    –color[=WHEN],
    –colour[=WHEN] use markers to highlight the matching strings;
    WHEN is ‘always’, ‘never’, or ‘auto’
    -U, --binary do not strip CR characters at EOL (MSDOS/Windows)
    -u, --unix-byte-offsets report offsets as if CRs were not there
    (MSDOS/Windows)

    ‘egrep’ means ‘grep -E’. ‘fgrep’ means ‘grep -F’.
    Direct invocation as either ‘egrep’ or ‘fgrep’ is deprecated.
    When FILE is -, read standard input. With no FILE, read . if a command-line
    -r is given, - otherwise. If fewer than two FILEs are given, assume -h.
    Exit status is 0 if any line is selected, 1 otherwise;
    if any error occurs and -q is not given, the exit status is 2.

    Report bugs to: bug-grep@gnu.org
    GNU Grep home page: http://www.gnu.org/software/grep/
    General help using GNU software: http://www.gnu.org/gethelp/

    展开全文
  • linux查询日志关键字上下文

    千次阅读 2019-12-04 19:56:32
    查看关键字及其下文200行 grep'关键字'-A200文件名 |tail-n201 查看关键字及其上下文200行 grep'关键字'-C200文件名|tail-n401

    查看关键字及其下文200行

    grep '关键字' -A 200 文件名 | tail -n 201

     

    查看关键字及其上下文200行

    grep '关键字' -C 200 文件名 | tail -n 401

    展开全文
  • 日志查看方式 随着技术的发展,越来越多的系统从单机转向到分布式,同时对应的日志查看方式除了直接查看文件外,也发展出了各种集中日志管理方式。...出现错误后,还原日志上下文(Context)不难,只要把日志...

    日志查看方式

    随着技术的发展,越来越多的系统从单机转向到分布式,同时对应的日志查看方式除了直接查看文件外,也发展出了各种集中日志管理方式。其中常见日志查看方式如下:

    单线程程序

    开发单机程序时诊断非常简单:设置断点,检查断点上下变量状态即可。
    当程序部署线上后,可以把断点中内容以日志方式记录下来。出现错误后,还原日志上下文(Context)不难,只要把日志文件中前后N行拿到后都能容易找到问题

    DingTalk20170609201400.png

    多线程程序

    当多线程出现后,还原上下文变得复杂一些,因为不同线程打日志顺序会造成一定干扰。我们可以在日志中记录、筛选线程(ThreadID)来排除其他线程干扰,拿到上下文

    DingTalk20170609201456.png

    分布式系统

    在分布式场景下(比如Docker、LXC、多服务器等),进程会同时跑在不同服务器上,一般通过集中式日志管理(例如Splunk、ELK、日志服务)等查找定位日志。

    DingTalk20170609201628.png

    这种场景下查找日志非常方便(例如通过"Level:Error","Latency>100000 & Method:HandleRequest"等能对上亿日志进行快速查找),但定位到关键日志后还原上下文却变得很难。因为日志采集、索引都是无序的,为了还原上下文,必须通过时间、机器、线程号来筛选和查找(这种方法一般不够精确),业界并没有好的方法。

    日志上下文查看

    今天日志服务(原SLS)LogSearch在查询分析基础上,提供了查看上下文的按钮,既可以在控制台上 完全精确 还原任意日志上下文(上下N条日志),并支持对指定内容(比如ThreadId)进行筛选,帮助你快速定位问题。整个过程如图所示:

    DingTalk20170609202622.png

    使用依赖

    • 只支持使用Logtail客户端收集的日志
    • 指定日志库(Logstore)必须开启索引功能

    实际场景

    • Dev在线上通过关键词查询,定位到一个异常日志

    DingTalk20170612104019.png

    • 点击上下文查询后,既跳转到前后N条上下文显示框

      • 可以通过“更早”、“更新”等按钮加载更多上下文,也可以点击“返回普通搜索模式”进一步排查
      • 通过筛选框筛选ThreadID,进行精准上下文的过滤

    DingTalk20170609203658.png

    展开全文
  • 一般来说,我们是通过grep命令查找文件中关键字所在的行,但是只能得到有关键字出现的行,他没有上下文,这时候,需要借助一些grep选项了。 这里通过示例说明一下: 查看关键字前后5行的内容 grep -C 5 ...
  • 大咖揭秘Java人都栽在了哪?...>> 对于一个开发或运维人员而言, 当系统出现故障时, 第一步常常就是查看... 查看日志经常碰到的一个需求就是按关键字去搜索, 在日常开发机子的 IDE , 都集成了强大的搜索功能...
  • 查找搜索目标所在行数 $cat catalina.out | grep -n ‘2019-08-01 17:24:16’ 2 查看搜索目标后2行数据 $cat catalina.out | grep -A 2 ‘2019-08-01 17:24:16’ 3 查看搜索目标前2行数据 $cat catalina.out | grep ...
  • Java面试题大全(2020版)

    万次阅读 多人点赞 2019-11-26 11:59:06
    当我们往Hashmap中put元素时,首先根据key的hashcode重新计算hash值,根绝hash值得到这个元素在数组中的位置(下标),如果该数组在该位置已经存放了其他元素,那么在这个位置的元素将以链表的形式存放,新加入的放在...
  • Camel应用在生产环境下运行时候,必然会记录其执行上下文信息,以便于问题的追踪和回溯。但从浩如烟海的日志中找出感兴趣的内容势必是一个非常枯燥耗时的操作,本文意图缓解这一现象。
  • 上面的命令是打开pom.xml文件,并显示行号,查找关键字abc,这个-n就是显示pom.xml这个文件的行号 从上面的图片可以看到在cat -n pom.xml的时候会显示出行号。 我们再用cat -n pom.xml | grep ...
  • Linux 应用服务器上查找日志,定位错误的识用技巧

    万次阅读 多人点赞 2018-11-01 09:54:27
    tail -n 10 test.log 查询日志尾部最后10行的日志; tail -n +10 test.log 查询10行之后的所有日志; head head -n 10 test.log 查询日志文件中的头10行日志; head -n -10 test.log 查询日志文件除了最后...
  • 双亲委派模型与线程上下文类加载器

    万次阅读 多人点赞 2019-04-14 11:39:54
    SPI机制是什么,有哪些应用场景,又带来了哪些问题? 双亲委派模型是Java推荐的类加载模型,但违背该模型的案例有哪些?为什么会违背,又是怎么解决这种case的?...线程上下文类加载器的作用与应用场景?
  • JAVA百实例源码以及开源项目

    千次下载 热门讨论 2016-01-03 17:37:40
    5个目标文件,演示Address EJB的实现,创建一个EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回一个经过初始化的上下文,用client的getHome()函数调用Home接口...
  • MySQL 面试题

    万次阅读 多人点赞 2019-09-02 16:03:33
    MySQL 中存储引擎使用类似的方式进行查询,先去索引中查找对应的值,然后根据匹配的索引找到对应的数据行。 ? 索引有什么好处? 提高数据的检索速度,降低数据库IO成本:使用索引的意义就是通过缩小表中需要...
  • linux中查看包含字符串的上下文命令

    千次阅读 2019-06-29 14:41:54
    比如:grep “123” test.log //查看test.log中包含123字符的日志 如果想查看指定内容上下几行,可以用参考下面的用法: $grep -10 ‘123’ test.log//打印匹配行的前后10行 或 $grep -C 10 ‘123’ test.log//...
  • 真正理解线程上下文类加载器(多案例分析)

    万次阅读 多人点赞 2016-09-25 13:31:36
    线程上下文类加载器破坏了“双亲委派模型”,可以在执行线程中抛弃双亲委派加载链模式,使上层代码可以逆向使用下层的系统类加载器。本文通过JDBC和Tomcat两个案例分析,详细解释了其中的原理。
  • linux:根据关键字或日期查找日志 1. 在vi/vim中,使用 /keyword 可以向下查找 ?keyword 可以向上查找 找到之后,按n查找下一个,按N查找上一个
  • 我们常用它来查看日志文件,通过-f参数可实时看文件的最新内容。 tail命令格式与参数 格式 tail [选项...] [文件...] tail [-F | -f ] [-q] [-c # | -n #] [file ...] 注:其中 # 代表数字的意思。 参数解释 ...
  • 前端面试题(持续更新中)

    万次阅读 多人点赞 2019-11-06 17:16:33
    块级格式化上下文。是一种边距重叠解决方案。 应用场景: 1. 解决margin叠加的问题 2. 用于布局(overflow: hidden) 3.BFC不会与浮动盒子叠加。 4. 用于清除浮动,计算BFC高度。 5、行内元素和块级元素有什么区别...
  • 前端面试题

    万次阅读 多人点赞 2019-08-08 11:49:01
    一个页面有大量的图片(大型电商网站),加载很慢,你有哪些方法优化这些图片的加载,给用户更好的体验。 25 你如何理解HTML结构的语义化? 26 谈谈以前端角度出发做好SEO需要考虑什么? 27 有哪项方式可以...
  • Redis面试题集

    千次阅读 多人点赞 2019-09-16 10:19:31
    3、采用单线程,避免了不必要的上下文切换和竞争条件,也不存在多进程或者多线程导致的切换而消耗 CPU,不用去考虑各种锁的问题,不存在加锁释放锁操作,没有因为可能出现死锁而导致的性能消耗; 4、使用多路I/O...
  • linux日志筛选查找命令

    千次阅读 2019-02-20 11:44:14
    日志实时监控 tail -f spring.log 关键字实时监控 tail -f spring.log | grep "key" 如果没有特殊字符,可以不用引号,如果关键字有引号使用单引号和双引号配合使用 输出匹配内容上下行 输出匹配行以及...
  • TensorFlow入门

    千次阅读 多人点赞 2019-04-23 10:09:29
    上下文 (context) 中执行图. 使用 tensor 表示数据. 通过 变量 (Variable) 维护状态. 使用 feed 和 fetch 可以为任意的操作(arbitrary operation)赋值或者从其中获取数据. 综述 TensorFlow 是一个...
  • 本文总结一下 shell 查看日志的脚本 首先在我们开发的过程中不管我们是做什么开发,java也好数据库也好都会在服务器上产生大量的日志...1 能够按照我们要查找的关键字查找并给出上下文,打印在终端。 2 能够设置上...
  • js面试题

    千次阅读 多人点赞 2019-04-09 19:42:32
    e.getAttribute(),是标准 DOM 操作文档元素属性的方法,具有通用性可在任意文档使用,返回元素在源文件中设置的属性 e.propName 通常是在 HTML 文档中访问特定元素的特性,浏览器解析元素后生成对应对象(如 a ...
  • Linux之SELinux-安全上下文

    千次阅读 2018-09-09 16:03:06
    设置SELinux管理日志 查看SELinux帮助  *******温馨提示:小编认为文中的理论知识点也很重要,请热爱学习的你们也同样耐心阅读完******** SELinux介绍 SELinux:Secure Enhanced Linux,是美国国家...
  • springMVC流程解析

    万次阅读 2019-02-12 16:23:02
    //设置上下文环境 request.setAttribute(WEB_APPLICATION_CONTEXT_ATTRIBUTE, getWebApplicationContext()); //设置本地解析 request.setAttribute(LOCALE_RESOLVER_ATTRIBUTE, this.localeResolver); /...
  • 由于我们通过CAT命令已经知道行号了,只需要使用SED,输入一个行号的大概范围,就可以详细的展示上下文日志内容了。 小技巧 如果公司里没有完善的查看日志的工具,例如ELK。那么借助上面的小工具,也可以简单的...
  • 软件测试面试题汇总

    万次阅读 多人点赞 2018-09-27 12:31:09
    2、我现在有个程序,发现在Windows运行得很慢,怎么判别是程序存在问题还是软硬件系统存在问题?   5 3、测试的策略有哪些? ................................................................................

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 51,878
精华内容 20,751
关键字:

日志上下文查找