grep 同时过滤两种字符_grep命令快速入门

58019e082269407884786807a81ab34a.png

Linux 文本操作的三大神器:grep、sed、awk,各自的最佳应用场景:

  • grep:使用正则表达式搜索文本,并把匹配的行打印出来,是强大的文本搜索工具;
  • sed:用于编辑匹配到的文本,是一种流编辑器;
  • awk:能够对文本进行复杂的格式处理,是一种处理文本的语言。

接下来,会依次对这三个命令进行介绍,方便快速上手。

首先是 grep。

1、命令功能

grep 的主要功能是在文件中查找/过滤所需要的内容。

比如查看 ip 地址的命令:

ifconfig | grep inet
0162970ed5410f3c2c337020baa44d8e.png

2、命令格式

grep [option] pattern file

其中,option 是 grep 命令的参数,pattern 是所需查找/过滤的内容,file 是指定的文件。

3、命令参数

  • -A:除了显示匹配 pattern 的那一行外,显示该行之后的内容
  • -B:除了显示匹配 pattern 的那一行外,显示该行之前的内容
  • -C:除了显示匹配 pattern 的那一行外,显示该行前、后的内容
  • -c:统计匹配的行数
  • -e:同时匹配多个pattern
  • -i:忽略字符的大小写
  • -n:显示匹配的行号
  • -o:只显示匹配的字符串
  • -v:显示没有匹配pattern的那一行,相当于反向匹配
  • -w:匹配整个单词

4、grep应用示例

比如有一个hello.txt,内容如下:

57b5472d537060acc5168ce983e4f8f9.png

通过设定不同命令参数的示例如下:

e9fa35c7b55ba717b7c307f677727d8c.png

同时匹配多个pattern(-e)和忽略大小写(-i)很方便查找:

f486c0de7c4f690af03315b86750cab3.png

显示行号(-n)可以快速定位:

98af91f6b7c8aa3f29a7a347a61bcb1c.png

反向匹配(-v)也经常用到:

86e885addb78dfd6bf53f0d4b69f7831.png

5、常用的正则表达式

常用的正则表达式:

  • .:任意单个字符
  • *:任意字符多次
  • []:指定范围,如[0-9]、[a-z]、[A-Z]、[0-9a-zA-Z]
  • ^:行首
  • $:行尾
  • ^$:空行

比如有一个hello.txt,内容如下:

c6bcb94a33d9d8c2878b1c051845da54.png

使用正则表达式的匹配示例:

dd82963f4fa69798fb68d97809c0e7f1.png
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值