CentOS下命令汇总之正则表达式详解

(编辑:jimmy 日期: 2024/11/16 浏览:2)

正则表达式分两类:基本正则表达式(BRE)和扩展正则表达式(ERE)。

基本正则表达式的元字符含义:

1、.:匹配任何单个字符

2、[]:匹配指定范围内的单个字符

3、[^]:匹配指定范围外的单个字符

4、*:匹配其前面任意次数的字符

5、\?:匹配其前面0或1次

6、\+:匹配其前面1或多次

7、\{m\}:精确匹配m次

8、\{m,n\}:匹配至少m次,最多n次

9、.*:匹配任意长度的任意字符

10、^:行首锚定,

11、$:行尾锚定

12、\<:词首锚定(也可以用\b)

13、\>:词尾锚定(也可以用\b)

14、^$:匹配空白行

15、\(\):常与\n(n为数字)一起用,用来匹配某单个或多个字符组合的重现次数

二、扩展正则表达式的元字符含义:

1、.:匹配任何单个字符

2、[]:匹配指定范围内的单个字符

3、[^]:匹配指定范围外的单个字符

4、*:匹配其前面任意次数的字符

5、?:匹配其前面0或1次

6、+:匹配其前面1或多次

7、{m}:精确匹配m次

8、{m,n}:匹配至少m次,最多n次

9、.*:匹配任意长度的任意字符

10、^:行首锚定,

11、$:行尾锚定

12、\<:词首锚定(也可以用\b)

13、\>:词尾锚定(也可以用\b)

14、^$:匹配空白行

15、():常与\n(n为数字)一起用,用来匹配某单个或多个字符组合的重现次数

16、|:匹配|符号前或后的字符

三、可以匹配正则表达式的命令有:(这里只说grep命令)

1、grep:grep用基本正则表达式来匹配文本行。

    格式:grep [OPTIONS] PATTERN [FILE...]

grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]

     选项:

-E:使用扩展正则表达式进行匹配(相当于egrep)

-F:相当于fgrep

-i:匹配时忽略大小写

-v:显示不匹配模式的行

-o:只显示匹配到的行

-q:静默模式

--color=auto:对匹配到的字符做高亮显示

四、例子:

1、显示/etc/passwd文件中以bash结尾的行;

CentOS下命令汇总之正则表达式详解

2、显示/etc/passwd文件中的两位数或三位数;

CentOS下命令汇总之正则表达式详解

3、 显示'netstat -tan'命令结果中以'LISTEN'后跟0个、1个或多个空白字符结尾的行

CentOS下命令汇总之正则表达式详解

4、添加用户bash,testbash, basher以及nologin用户(nologin用户的shell为/sbin/nologin);而后找出/etc/passwd文件中用户名同shell名的行;

CentOS下命令汇总之正则表达式详解

5、显示当前系统上root、centos或user1用户的默认的shell和UID;

CentOS下命令汇总之正则表达式详解

6、找出/etc/rc.d/init.d/functions文件中某单词(单词中间可以存在下划线)后面跟着一组小括号的行

CentOS下命令汇总之正则表达式详解

7、使用echo输出一个路径,而后egrep找出其路径基名;

进一步地:使用egrep取出其目录名

CentOS下命令汇总之正则表达式详解

CentOS下命令汇总之正则表达式详解

8、找出ifconfig命令执行结果中1-255之间的数字;

CentOS下命令汇总之正则表达式详解

一句话新闻

微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。