1.正则表达式概念

  • Linux Shell 以一串字符作为表达式向系统传达意思,元字符是用来阐释字符表达意义的字符
  • 简单来说,元字符就是描述字符的字符,它用于对字符表达式的内容,转换以及各种操作信息进行描述
  • 正则表达式是由一串字符和元字符构成的字符串
  • 正则表达式的主要功能是文本查询和字符串操作,它可以匹配文本的一个字符或字符集合
  • 基本正则表达式元字符集合即其含义

字符

含义

*

0个或多个在*字符之前的那个普通字符

.

匹配任意字符

^

匹配行首,或后面字符的非

$

匹配行尾

[ ]

匹配字符集合

\

转义符,用于解释“\”符号后面的元字符

  • \<\> :精确匹配符号,利用\符号屏蔽<>符号
  • \{\}:与*符号类似,表示前一个字符的重复,但{}可以指定重复次数,而另一个表示重复0次或任意次

2.grep命令

  • grep是一段话的缩写(Global search regular expression andprint out the line)全面研究正则表达式并显示出来
  • 作用:grep命令是一种强大的文本搜索文具,根据用户指定的“模式”对目标文本进行匹配检查,打印匹配到行
  • 模式:有正则表达式或者字符及基本文本字符所编写的过滤条件
-a  不要忽略二进制数据。
-A  <显示列数> 除了显示符合范本样式的那一行之外,并显示该行之后的内容
-b  在显示符合范本样式的那一行之外,并显示该行之前的内容
-c  计算符合范本样式的列数
-C <显示列数>或-<显示列数>  除了显示符合范本样式的那一列之外,并显示该列之前后的内容。
-d <进行动作> 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep命令将回报信息并停止动作
-e <范本样式> 匹配多个样式
-E 将范本样式为延伸的普通表示法来使用,意味着使用能使用扩展正则表达式
-f <范本文件> 指定范本文件,其内容有一个或多个范本样式,让grep查找符合范本条件的文件内容,格式为每一列的范本样式
-F 将范本样式视为固定字符串的列表
-G 将范本样式视为普通的表示法来使用
-h 在显示符合范本样式的那一列之前,不标示该列所属的文件名称
-H 在显示符合范本样式的那一列之前,标示该列的文件名称
-i 忽略字符大小写
-l 列出文件内容符合指定的范本样式的文件名称
-L 列出文件内容不符合指定的范本样式的文件名称
-n 在显示符合范本样式的那一列之前,标示出该列的编号
-q 不显示任何信息
-R/-r 递归查询
-s 不显示错误信息
-v 反转查找
-w 正则匹配只包含完全字符的内容,如roo只匹配roo,不匹配root,roott等
-x 只显示全列符合的列
-y 此参数效果跟“-i”相同
-o 只输出文件中匹配到的部分

3.应用

grep显示前三行内容_元字符

grep显示前三行内容_正则表达式_02

grep显示前三行内容_元字符_03

grep显示前三行内容_文件名_04

grep显示前三行内容_文件名_05

grep显示前三行内容_文件名_06


grep显示前三行内容_grep显示前三行内容_07

grep显示前三行内容_文件名_08