Linux进阶命令----grep

grep 命令介绍

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

grep命令格式

grep [选项] [文本内容] 文件名

常用选项

  1. -E :开启扩展(Extend)的正则表达式。

  2. -i :忽略大小写(ignore case)。

  3. -v :反过来(invert),只打印没有匹配的,而匹配的反而不打印。

  4. -n :显示行号

  5. -w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker

  6. -c(count·) :显示总共有多少行被匹配到了,而不是显示被匹配到的内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到。

  7. -o :只显示被模式匹配到的字符串。

  8. -e : 匹配多个文本

  9. -l : 显示含有匹配文字的文件的文件名

  10. --color :将匹配到的内容以颜色高亮显示。

  11. -A n:显示匹配到的字符串所在的行及其后n行,after

  12. -B n:显示匹配到的字符串所在的行及其前n行,before

  13. -C n:显示匹配到的字符串所在的行及其前后各n行,context

模式部分

1、直接输入要匹配的字符串,这个可以用fgrep(fast grep)代替来提高查找速度,比如我要匹配一下hello.c文件中printf的个数:grep -c "printf" hello.c

2、使用基本正则表达式,下面谈关于基本正则表达式的使用:

匹配字符:

  • . :任意一个字符。

  • [abc] :表示匹配一个字符,这个字符必须是abc中的一个。

  • [a-zA-Z] :表示匹配一个字符,这个字符必须是a-z或A-Z这52个字母中的一个。

  • [^123] :匹配一个字符,这个字符是除了1、2、3以外的所有字符。

对于一些常用的字符集,系统做了定义:

  • [A-Za-z] 等价于 [[:alpha:]]

  • [0-9] 等价于 [[:digit:]]

  • [A-Za-z0-9] 等价于 [[:alnum:]]

  • tab,space 等空白字符 [[:space:]]

  • [A-Z] 等价于 [[:upper:]]

  • [a-z] 等价于 [[:lower:]]

  • 标点符号 [[:punct:]]

匹配次数:

      \{m,n\} :匹配其前面出现的字符至少m次,至多n次。
      \? :匹配其前面出现的内容0次或1次,等价于\{0,1\}。
\*:匹配其前面出现的内容任意次,等价于\{0,\},所以 ".*" 表述任意字符任意次,即无论什么内容全部匹配。

位置锚定:

      ^ :锚定行首

      $ :锚定行尾。技巧:"^$"用于匹配空白行。

Linux进阶命令-grep的更多相关文章

  1. linux管道命令grep命令参数及用法详解---附使用案例|grep

    功能说明:查找文件里符合条件的字符串. 语 法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>] ...

  2. linux 进阶命令

    进阶命令 1    df指令   查看磁盘的空间 # df -h    -h表示可读性更高,方便读取 执行指令后(Filesystem:磁盘名称  size:磁盘总大小  Used: 被使用的大小  ...

  3. Linux基础(05)、Linux进阶命令

    目录 一.进阶命令 二.系统命令 三.压缩和归档 3.1.归档 3.2.压缩 3.3.归档并压缩 归档.接档:tar -cf.tar -tvf 压缩.解压:gzip.gunzip 归档并压缩:tar ...

  4. Linux常用命令 | grep

      作者简介 李先生(Lemon),高级运维工程师(自称),SRE专家(目标),梦想在35岁买一辆保时捷.喜欢钻研底层技术,认为底层基础才是王道.一切新技术都离不开操作系统(CPU.内存.磁盘).网络 ...

  5. linux常用命令 grep命令

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

  6. Linux进阶命令-sort、uniq、 cut、sed、grep、find、awk

    命令难度总体来说有简入难,参数都是工作中常常用到的.如果涉及到一些生僻的参数还请百度或man一下. sort(参考学习网站:http://www.cnblogs.com/dong008259/arch ...

  7. linux 进阶命令笔记(12月26日)

    1. df 指令 作用:查看磁盘空间 用法: #df -h       -h 表示以可读性较高的形式展示大小   2.free 指令 作用:查看内存使用情况 语法:#free -m       -m表 ...

  8. Linux文本检索命令grep笔记

    grep是在linux系统中基于行文本非常实用检索工具,通过该命令可以将匹配到的结果信息输出到终端控制台. 语法格式:grep [-ivnc] '需要匹配的内容' 文件名 常用参数说明: -i 检索的 ...

  9. 第5课.linux进阶命令

    1.find:查找符合条件的文件 格式: find 目录名 选项 查找条件 eg: find /work/001_linux_basic/dira/ -name "test1.txt&quo ...

  10. linux进阶命令

    1.输出重定向:一般命令的输出都会显示在终端中,有些时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计,则这时候需要使用到的输出重定向技术. >:覆盖输出,会覆盖掉原先的文件内容  ...

随机推荐

  1. 数字孪生与VR设备的融合为旅游行业带来革新

    数字时代的推动下,旅游行业正迎来一场革命性的变革.数字孪生系统与虚拟现实(VR)的融合为旅游体验带来了全新的可能性.通过数字孪生技术的实时模拟和VR设备的沉浸式体验,旅游行业迎来了全新的变革时代. 数 ...

  2. Python——第五章:csv模块

    未来我们会使用爬虫获取到一些json文件,例如去英雄联盟官方爬取英雄的数据库 查看代码 {"hero":[{"heroId":"1",&qu ...

  3. linux中iptables防火墙相关命令

    https://www.cnblogs.com/seven1979/p/4173927.html https://blog.csdn.net/shenjianxz/article/details/62 ...

  4. CSS3学习笔记-文字特效

    CSS3中提供了许多有趣和实用的文字特效,可以让我们的文本内容更加生动有趣,下面介绍一些常用的文字特效. 文本阴影 使用text-shadow属性可以为文本添加阴影效果,语法如下: text-shad ...

  5. 如何使用ffmpeg转换图片格式

    ffmpeg简介与图片格式介绍 windows安装ffmpeg,从如下网站下载release版本 https://www.gyan.dev/ffmpeg/builds/ ffmpeg 6.1版本仍然不 ...

  6. AI论文解读丨融合视觉、语义、关系多模态信息的文档版面分析架构VSR

    摘要:文档版式分析任务中,文档的视觉信息.文本信息.各版式部件间的关系信息都对分析过程具有很重要的作用.本文提出一种融合视觉.文本.关系多模态信息的版式分析架构VSR. 本文分享自华为云社区<论 ...

  7. 关于HTTPS认证,这里解决你所有疑惑

    摘要:从签发证书到数据加密交互,按流程的进展讲解HTTPS认证过程内容和原理. 本文分享自华为云社区<故事+图文,一次性解决你对HTTPS认证过程的所有疑惑>,作者:breakDraw. ...

  8. Nginx在windows下常用命令

    cmd 进入Nginx解压目录 执行以下命令 start nginx : 启动nginx服务 nginx -s reload :修改配置后重新加载生效 nginx -s reopen :重新打开日志文 ...

  9. 火山引擎A/B测试推出智能流量调优实验,助力汽车行业破局营销困境

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 2023年是汽车行业挑战加剧的一年,在这样一个变革时期,多家车企都在进行创新技术和战略调整,实现灵活的科学决策,在 ...

  10. PPT 如何将大段WORD制作成PPT

    PPT 如何将大段WORD制作成PPT 标记等级 发送到PPT 图片.表格,无法发送