专栏首页编程修养Linux 三剑客之 grep 教程详解

Linux 三剑客之 grep 教程详解

Linux 最重要的三个命令在业界被称为三剑客,它们是:awksedgrep。sed 已经在上篇中讲过,本文要讲的是 grep 命令。

我们在使用 Linux 系统中,grep 命令的使用尤为频繁,熟练掌握 grep 的常见用法,能够极大地提高你的工作效率。

grep 命令是一种强大的文本搜索工具,它能使用正则表达式,按照指定的模式去匹配,并把匹配的行打印出来。需要注意的是,grep 只支持匹配而不能替换匹配的内容,替换的功能可以由 sed 来完成。

整体上 grep 还是比较简单的,文中不会详细列举所有的选项和参数,会以多个具体示例来说明 grep 的使用方法和场景,帮助你快速学会 grep 的常见用法。

示例实战

废话不说了,直接实战。文章中的示例 需要一个样例文件,文件内容如下:

1. 把包含 syslog 的行过滤出来

2. 把以 ntp 开头的行过滤出来

3. 把匹配 ntp 的行以及下边的两行过滤出来

4. 把包含 syslog 及上边的一行过滤出来

5. 把包含 syslog 以及上、下一行内容过滤出来

6. 过滤某个关键词,并输出行号

7. 过滤不包含某关键词,并输出行号

8. 删除掉空行

9. 过滤包含 root 或 syslog 的行

10. 查看当前目录中包含某关键词的所有文件(这个很有用)

简单总结

通过了一些简单案例操作,我们应该已经熟悉了 grep 的常见用法,下边再来简单总结 grep 的常见选项,相信在实战练习后再来总结应该会有更好的学习效果。

  • -A:除了匹配行,额外显示该行之的N行
  • -B:除了匹配行,额外显示该行之的N行
  • -C:除了匹配行,额外显示该行前后的N行
  • -c:统计匹配的行数
  • -e实现多个选项间的逻辑 or 关系
  • -E支持扩展的正则表达式
  • -F:相当于 fgrep
  • -i忽略大小写
  • -n:显示匹配的行号
  • -o:仅显示匹配到的字符串
  • -q:安静模式,不输出任何信息,脚本中常用
  • -s:不显示错误信息
  • -v显示不被匹配到的行
  • -w:显示整个单词
  • --color:以颜色突出显示匹配到的字符串

与 grep 相似的工具还有 egrepfgrep,实用性并不强,其功能完全可以通过 grep 的扩展参数来实现,所以就不再扩展。

本文分享自微信公众号 - 编程修养(chopin11vip),作者:肖邦

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-01-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Linux三剑客之grep

    版权声明:本文为耕耘实录原创文章,各大自媒体平台同步更新。欢迎转载,转载请注明出处,谢谢

    耕耘实录
  • linux三剑客之老三grep

    最骚的就数这个了,不用再下载一堆东西或者打开某个网页在测试正则表达式了,比如校验json、校验邮箱。一个grep就搞定,是不是很方便呢?

    机智的程序员小熊
  • Linux三剑客之grep简介

    grep,sed和awk被称之为linux三剑客,后面两个在文章中都写过一些,今天先简单写写grep这个命令。

    AsiaYe
  • Linux三剑客命令之Grep

    同样可以配合正则表达式来搜索文本,并将匹配的行打印输出,也可用于过滤与搜索特定字符串,使用十分灵活

    民工哥
  • 性能工具之linux三剑客awk、grep、sed详解

    linux 有很多工具可以做文本处理,例如:sort, cut, split, join, paste, comm, uniq, column, rev, ta...

    高楼Zee
  • Linux 三剑客之 awk 实战详解教程

    我们知道 Linux 三剑客,它们是 grep、sed、awk。在前边已经讲过 grep 和 sed,没看过的同学可以直接点击阅读,今天要分享的是更为强大的 a...

    用户3105362
  • 详解Linux三剑客之awk

    awk不仅仅是linux系统中的一个命令,而且是一种编程语言;它可以用来处理数据和生成报告(excel);处理的数据可以是一个或多个文件;可以是直接来自标准输入...

    宜信技术学院
  • Shell四剑客实操案例

    在Shell编程工具中,四剑客工具的使用更加的广泛,Shell编程四剑客包括:find、sed、grep、awk,熟练掌握四剑客会对Shell编程能力极大的提升...

    胡齐
  • 每天一个Linux命令--文本处理三剑客之grep

    grep、sed、awk被称为文本处理三剑客。对于纯文本来说,没有这三个工具干不了的事情,并且效率也不低。今天给大家介绍一下其中的grep。

    CorollaD
  • 实例详解linux文本三剑客--sed

    章鱼喵
  • git | Windows下如何利用Linux的命令

    在windows下,我也想用awk,sed,grep这Linux的三剑客,怎么办?之前我时安装的cywin软件,很麻烦,而且界面不好看,用着不方便。有没有方便一...

    邓飞
  • Linux命令三剑客的一顿操作

    今天在写一个脚本的时候,遇到了很多字符过滤的问题,感觉还是有些技术含量的,这里记录下来,以便后续参阅。

    AsiaYe
  • 各种计算机语言的经典书籍(C/C++/Java/C#/VC/VB等)

    Java编程语言(第三版)—Java四大名著—-James Gosling(Java之父)

    谙忆
  • 6天linux

    脱产班Linux周末内容 日期 主题 内容 1 Linux入门 "计算机硬件、操作系统概述 ...

    超蛋lhy
  • 性能工具之linux常见日志统计分析命令

    在上文中性能工具之linux三剑客awk、grep、sed详解,我们已经详细介绍 linux 三剑客的基本使用,接下来我们看看具体在性能测试领域的运用,本文主要...

    高楼Zee
  • awk实现类sql的join操作

    awk、grep和sed被称为linux三剑客,事实上grep和awk我在日常工作中也常用到(sed用的比较少),可能有些人对awk了解比较少,我先大概介绍下。...

    xindoo
  • linux基础命令

    1.mkdir 创建目录   mkdir -p 循环创建目录   touch 创建文件 2.ls 显示目录或文件   ls -ld=ll 以长目录式查看   l...

    用户1173509
  • Linux三剑客之awk(2):awk模块、变量与执行

    BEGIN模块在awk读取文件之前就执行,BEGIN模式常常被用来修改内置变量ORS,RS,FS,OFS等的值。可以不接任何输入文件

    宜信技术学院
  • 【阅读清单】系列文章清单列表(一)

    Centreon+Nagios实战 https://cloud.tencent.com/developer/inventory/272

    云加社区

扫码关注云+社区

领取腾讯云代金券