`

grep 仅显示匹配的字符

 
阅读更多
默认情况下grep会显示匹配了正则的整行,但是我们的正则只想显示匹配了的字符时怎么办


grep -oh "[[:alpha:]]*th[[:alpha:]]*" 'filename'

引用


This is an updated and cross distribution safe answer

grep -oh "[[:alpha:]]*th[[:alpha:]]*" 'filename'

To summaries -oh outputs the regular expression matches to the file content (and not its filename), just like how you would expect regular expression to work in vim/etc... What word or regular expression you would be searching for then, is up to you! As long as you remain to POSIX and not perl syntax (refer below)

More from the manual for grep

-o      Print each match, but only the match, not the entire line.
-h      Never print filename headers (i.e. filenames) with output lines.
-w      The expression is searched for as a word (as if surrounded by
         `[[:<:]]' and `[[:>:]]';

The reason why the original answer does not work for everyone


Can grep show only words that match search pattern?

于是,就有了,查看weblogic GC日志的命令

在多个weblogic服务器日志上找FullGC
//查找FullGC
grep 'Full' `head -n 10  weblogic.log |grep -oh 'gc_.*log'` 


查找日志末5000行,打印文件名和错误的行
tail -n 50000  */weblogic*.log  |grep -E "weblogic.*log|2937u38338"

-E选项,支持扩展的正则表达式,支持或“|”操作
分享到:
评论

相关推荐

    使用 grep 命令搜索多个字符串.doc

    此外,grep 命令还支持其他选项和参数,例如 `-i` 选项用于忽略大小写, `-v` 选项用于显示不匹配的行, `-n` 选项用于显示行号等。这些选项和参数可以根据实际情况选择使用。 grep 命令搜索多个字符串是 Linux ...

    linux grep命令详解_linux_grep_

    `grep`的强大之处在于支持正则表达式,这使得我们可以使用各种复杂的模式来匹配字符串。 1. **基础正则字符** - `.`:匹配任意单个字符。 - `*`:匹配前面的字符0次或多次。 - `+`:匹配前面的字符1次或多次。 ...

    Linux查找文件中的字符串命令 grep -nr 'archermind'

    -h:查询多个文件时不显示文件名 -H:只显示文件名 -l:查询多文件时只输出包含匹配字符的文件名 -n:只显示匹配行及其行号 -s:不显示不存在或无匹配文本的错误信息。 -v:显示不包含匹配文本的所有行。 (2)...

    Grep学习笔记.pdf

    这在查看上下文环境时非常有用,例如`grep -2 pattern filename`将显示匹配行及其上下各两行。 总之,Grep是一款极其强大且灵活的文本搜索工具,熟练掌握其使用方法能够极大地提升数据处理效率。无论是基础的正则...

    Indesign_GREP正则表达式

    - **元字符**:元字符是一些具有特殊含义的字符,例如`.`、`*`、`+`等,它们可以帮助构建更复杂的匹配规则。 - **锚点**:用于指定匹配的起始或结束位置,如`^`表示行首,`$`表示行尾。 - **字符类**:如`[abc]`表示...

    grep正则表达使用简介

    4. `*`:匹配前面的字符零次或多次,`*grep`匹配一个或多个空格后跟 grep 的行。 5. `.*`:匹配任意数量的任意字符。 6. `[]`:匹配括号内的任一字符,`[Gg]rep`匹配 Grep 或 grep。 7. `[^]`:匹配不在括号内的任一...

    linux grep命令详解

    `grep` 支持三种工作模式:基本正则表达式(BRE)、扩展正则表达式(ERE)以及固定字符串匹配。默认情况下,`grep` 使用的是基本正则表达式(BRE)。 #### 2. 参数详解 - **-A NUM, --after-context=NUM** 在显示...

    linuxgrep命令.pdf

    - -c:仅显示匹配行的计数。 - -h:在搜索多个文件时,不显示文件名前缀。 - -l:仅显示包含匹配文本的文件名。 - -n:显示匹配行及其行号。 - -s:静默模式,不显示关于不存在或无法读取文件的错误消息。 - -v:...

    grep与正则表达式

    | `^` | 行首定位符,用于匹配字符串或行的起始位置。 | `/^love/` | 匹配所有以 "love" 开头的行 | | `$` | 行尾定位符,用于匹配字符串或行的结束位置。 | `/love$/` | 匹配所有以 "love" 结尾的行 | | `.` | 匹配...

    研究报告:grep命令.ppt

    * `\(`和`)`:标记匹配字符,如:'\(love\)',love 被标记为 1。 * `\定位单词的开始,如 :'\&lt;grep' 匹配包含以 grep 开头的单词的行。 * `\&gt;`:定位单词的结束,如 :'grep\&gt;' 匹配包含以 grep 结尾的单词的行。 * `...

    Linux grep 命令详解

    grep 命令支持正则表达式的使用,可以使用特殊字符来进行模式匹配。 * `.`:匹配任何单个字符 * `*`:匹配零个或多个字符 * `+`:匹配一个或多个字符 * `?`:匹配零个或一个字符 * `{n, m}`:匹配至少 n 个,至多 m...

    grep用法,grep用法,grep用法,grep用法,grep用法,

    - 显示匹配行及其行号:`grep -n "pattern" file.txt` 6. **其他高级用法** - `-o`:只显示匹配的部分,而不是整行。 - `-A num`:显示匹配行之后的num行。 - `-B num`:显示匹配行之前的num行。 - `-C num`:...

    www-igm_univ-mlv_~lecroq_string.rar_grep_linux 编程_串匹配_字符串匹配_字符串

    重磅送出,一个网站的字符串匹配算法讲解,以及算法实现的演示。希望在字符串匹配算法这方面有研究的。看了这里面的东西,保证你不再去找别的东西去看了。经典中的经典。这是把一个网站的一个链接目录完全下载,是...

    unix的grep命令

    4. **-l**:查询多文件时只输出包含匹配字符的文件名。 5. **-n**:显示匹配行及其行号。 6. **-s**:不显示不存在或无匹配文本的错误信息。 7. **-v**:显示不包含匹配文本的所有行。 #### 五、示例分析 为了更好...

    Linux中利用grep命令如何检索文件内容详解

    - 使用参数`-c`仅统计匹配的行数。 - 命令格式:`grep -c "被查找的字符串" 文件名` - 或者通过管道结合`wc -l`命令来实现相同功能。 - 命令格式:`grep "被查找的字符串" 文件名 | wc -l` 7. **递归搜索目录**...

    最全的linux下grep命令的使用方法

    * `\(..\)`:标记匹配字符 * `\单词的开始 * `\&gt;`:单词的结束 * `x\{m\}`:重复字符 x,m 次 * `x\{m,\}`:重复字符 x,至少 m 次 * `x\{m,n\}`:重复字符 x,至少 m 次,不多于 n 次 * `\w`:匹配文字和数字字符 *...

    Linux Grep命令使用的详细介绍

    grep的工作原理是遍历一个或多个文件,寻找与给定的字符串模板匹配的行,搜索结果仅输出到屏幕,不会改变原文本内容。此外,grep还支持在shell脚本中使用,通过返回不同的状态值(0表示成功,1表示未找到,2表示文件...

Global site tag (gtag.js) - Google Analytics