grep命令快速入门
程序员文章站
2022-05-13 11:06:18
...
Linux 文本操作的三大神器:grep、sed、awk,各自的最佳应用场景:
- grep:使用正则表达式搜索文本,并把匹配的行打印出来,是强大的文本搜索工具;
- sed:用于编辑匹配到的文本,是一种流编辑器;
- awk:能够对文本进行复杂的格式处理,是一种处理文本的语言。
接下来,会依次对这三个命令进行介绍,方便快速上手。
首先是 grep。
1、命令功能
grep 的主要功能是在文件中查找/过滤所需要的内容。
比如查看 ip 地址的命令:
ifconfig | grep inet
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,内容如下:
通过设定不同命令参数的示例如下:
同时匹配多个pattern(-e)和忽略大小写(-i)很方便查找:
显示行号(-n)可以快速定位:
反向匹配(-v)也经常用到:
5、常用的正则表达式
常用的正则表达式:
- .:任意单个字符
- *:任意字符多次
- []:指定范围,如[0-9]、[a-z]、[A-Z]、[0-9a-zA-Z]
- ^:行首
- $:行尾
- ^$:空行
比如有一个hello.txt,内容如下:
使用正则表达式的匹配示例:
上一篇: Linux三剑客之grep命令