参考百度百科

1、简介

grep (缩写来自Globally search a Regular Expression and Print)是一种强大的文本搜索工具,它能使用特定模式匹配(包括正则表达式)搜索文本,并默认输出匹配行

2、语法

grep [OPTIONS] PATTERN [FILE…]

3、表达符集

字符 说明 示例
^ 锚定行的开始 '^grep'匹配所有以grep开头的行
$ 锚定行的结束 'grep$'匹配所有以grep结尾的行
. 匹配一个非换行符('\n')的字符 'gr.p'匹配gr后接一个任意字符,然后是p
* 匹配零个或多个先前字符 ' *grep' (注意*前有空格)匹配所有零个或多个空格后紧跟grep的行,需要用egrep 或者grep带上 -E 选项。 .*一起用代表任意字符。
[] 匹配一个指定范围内的字符 '[Gg]rep'匹配Grep和grep
[^] 匹配一个不在指定范围内的字符 '[^A-FH-Z]rep'匹配不包含A-F和H-Z的一个字母开头,紧跟rep的行
\(..\) 标记匹配字符 '\(love\)',love被标记为1
\< 锚定单词的开始 '\<grep'匹配包含以grep开头的单词的行
\> 锚定单词的结束 'grep\>'匹配包含以grep结尾的单词的行
x\{m\} 重复字符x,m次 'o\{5\}'匹配包含5个o的行
x\{m,\} 重复字符x,至少m次 'o\{5,\}'匹配至少有5个o的行
x\{m,n\} 重复字符x,至少m次,不多于n次 'o\{5,10\}'匹配5--10个o的行
\w 匹配文字和数字字符,也就是[A-Za-z0-9] 'G\w*p'匹配以G后跟零个或多个文字或数字字符,然后是p
\W \w的反置形式,匹配一个或多个非单词字符,如点号句号等  
\b 单词锁定符 '\bgrep\b'只匹配grep
\+ 匹配一个或多个先前的字符 '[a-z]\+able',匹配一个或多个小写字母后跟able的串,如loveable,enable,disable等
\? 匹配零个或一个先前的字符 'gr\?p'匹配gr后跟一个或没有字符,然后是p的行
a\|b\|c 匹配a或b或c grep|sed匹配grep或sed
\(\) 分组符号 love\(ab\le\|rs\)ov\+匹配loveable或lovers,匹配一个或多个ov

4、参数

参数 说明
-? 同时显示匹配行上下的?行
-b 打印匹配行前面打印该行所在的块号码
-c 只打印匹配到的行数(统计行数),不显示匹配的内容
-f File 从文件中提取模板。空文件中包含0个模板,所以什么都不匹配
-h 当搜索多个文件时,不显示匹配文件名前缀
-i 忽略大小写差别
-o 只显示正则表达式匹配的
-q 取消显示,只返回退出状态。0则表示找到了匹配的行,1为未匹配到,2为发生错误
-n 在匹配的行前面打印行号
-s 不显示关于不存在或者无法读取文件的错误信息(少用,一般将标准错误输出到/dev/null)
-v 反检索,只显示不匹配的行
-R,-r 递归的读取目录下的所有文件,包括子目录
-V 显示软件版本信息
-A6 查找某些字符的内容,并下延伸6行
-B6 查找某些字符的内容,并上延伸6行
-C1 查找某些字符的内容,并上和向下各延伸1行,这几行后面的数字直接影响延伸数量,并以--符号分割搜索行的结果

5、实例

匹配除包含 [ 特殊字符外的进程

ps -ef | grep -v '\['

grep 文本搜索工具的更多相关文章

  1. [linux] grep 文本搜索工具

    grep [option] pattern file Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.grep全称是Global Regular ...

  2. grep文本搜索工具详解

    ############grep命令############这个命令属于文本处理三大命令之一,强大的文本搜索工具(贪婪模式)全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达 ...

  3. 二、grep文本搜索工具

    grep命令作为Unix中用于文本搜索的神奇工具,能够接受正则表达式,生成各种格式的输出.除此外,它还有大量有趣的选项. # 搜索包含特定模式的文本行: [root@centos8 ~]#grep p ...

  4. grep文本处理工具

    grep是一款文本过滤工具,基于正则表达式进行模式匹配sed:stream editor 流编辑器awk:linux上实现为gawk,文本报告生成器(格式化文本)文本搜索工具,根据用户指定的模式,对目 ...

  5. shell脚本学习指南-grep文本搜索命令-学习(3)

    1.作用 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全 ...

  6. shell脚本基础和grep文本处理工具企业应用3

    文本处理工具:    linux上文本处理三剑客        grep,egrep,fgrep:文本过滤工具(模式:pattern)工具            grep:默认支持的是基本正则表达式: ...

  7. 基于文本图形(ncurses)的文本搜索工具 ncgrep

    背景 作为一个VIM党,日常工作开发中,会经常利用grep进行关键词搜索,以快速定位到文件.如图: 利用grep进行文本搜索 但是,这一过程会有两个效率问题: 展示的结果无法进行直接交互,需要手动粘贴 ...

  8. shell脚本基础和grep文本处理工具企业应用4

    文本处理工具:    egrep:        支持扩展的正则表达式实现类似于grep文本过滤功能:grep -E        egrep [OPTIONS] PATTERN [FILE...]  ...

  9. 系统资源监控——联用awk与grep文本处理工具,截取磁盘使用量字段

    一.使用到的命令行 1.df : df -h #将磁盘使用量用表的形式呈现. 2.awk: awk '{print $5}' #默认分隔符是空格,$后的数字是指定从第几列开始截取. awk -F [] ...

  10. grep命令 一 文本搜索工具

    使用正则表达式搜索文本,并把匹配的行打印出来.使用权限是所有用户. 基本使用 grep [option] pattern filename: pattern如果是表达式或者超过两个单词的, 需要用引号 ...

随机推荐

  1. 2022.7.12 thecold 讲课纪要

    前言 上午刚学完平衡树,听学长说下午讲 \(LCT\) ,想了想就我这种蒟蒻平衡树还写不明白就搞 \(LCT\) ,绝对会挂,就打算下午去初中集训班摸摸鱼. 一进去就看见了 thecold 学长,真的 ...

  2. Codeforces Round #704 (Div. 2) A~C题解

    写在前边 链接:Codeforces Round #704 (Div. 2) D就不补了,大fst场. A. Three swimmers 链接:A题链接 题目大意: 给定三个游泳者的到达岸边的周期, ...

  3. JuiceFS 用户必备的 6 个技巧

    随着大数据.AI 技术的发展,越来越多的企业.团队和个人开始使用 JuiceFS,本文整理了 6 个超实用的 JuiceFS 技巧,帮助大家提升 JuiceFS 的管理效率. 一.查看已挂载的文件系统 ...

  4. cookie和session的区别?一文讲透

    一.问题 cookie和session的区别? 二.回答 1.总结如下- cookie: - cookie存储于客户端本地,即浏览器缓存 - cookie存储着sessionId,作为后台sessio ...

  5. 【外包杯】【无语的报错】意想不到的逗号Unexpected comma.(已解决)

    解决了,答案是没保存,看见那些文件是型号了吗,就是这个原因.

  6. [ARC158D] Equation

    Problem Statement You are given a positive integer $n$, and a prime number $p$ at least $5$. Find a ...

  7. 基于python人脸识别考勤系统(语音播报)

    介绍: 本项目是大二寒假在家没事写的,一直没有时间讲本项目分享出来,现在有时间了哈.那就让我简单的将项目介绍一下吧.好了废话不多说了,直接上图 初始化界面: 可以看到所有的功能都展现在了左边的功能栏中 ...

  8. Python实现模块热加载

    为什么需要热加载 在某些情况,你可能不希望关闭Python进程并重新打开,或者你无法重新启动Python,这时候就需要实现实时修改代码实时生效,而不用重新启动Python 在我的需求下,这个功能非常重 ...

  9. 聊聊流式数据湖Paimon(一)

    翻译自 Apache Paimon官方文档 概览 概述 Apache Paimon (incubating) 是一项流式数据湖存储技术,可以为用户提供高吞吐.低延迟的数据摄入.流式订阅以及实时查询能力 ...

  10. 看看 Asp.net core Webapi 项目如何优雅地使用分布式缓存

    前言 缓存是提升程序性能必不可少的方法,Asp.net core 支持多级缓存配置,主要有客户端缓存.服务器端缓存,内存缓存和分布式缓存等.其中客户端缓和服务器端缓存在使用上都有比较大的限制,而内存缓 ...