正则表达式(Regular Expression,在代码中常简写为regex、regexp或RE),又称规则表达式、正规表达式。
由普通字符(例如字符 a 到 z)以及特殊字符(称为"元字符")组成的文字模式。模式描述在搜索文本时要匹配的一个或多个字符串。
正则表达式作为一个模板,用来检索、替换那些符合某个模式(规则)的文本。
POSIX规范字符集合
Linux文本处理三剑客:grep、sed、awk
基本正则表达式与grep命令练习
1、查找出services文件中包含字符串“ip”的行,不区分大小写,即IP、ip均可;
2、高亮显示passwd文件中的用户名。
3、在group文件中查找出组中包含非同名成员的行。
4、查找passwd文件中包含有“以s开头以d结尾的单词”的行。
5、查找passwd中UID为三位数的行。
6、高亮显示(变成红色)service文件中注释的内容。
7、查找passwd中包含三个bin的行
8、查找passwd中开头和结尾字母一样的行
9、查找passwd中UID和GID一样的行
10、查找sshd_config中包含“开头结尾字母一样的单词”的行。
11、查找passwd中开头和结尾一样内容的行
12、查找passwd中开头和结尾一样单词的行
13、查找services中行首三个字母和行尾三个字母逆序的行。
扩展正则表达式练习
1、 查找出services文件中包含字符串“ip”或者“IP”的行(此题思路可用于配置用户回答Yes、YES、yes或No、NO)
2、 配置dhcp的单词this或is(此题思路可用于匹配某个单词的单复数形式,例如找出句子“book books storybook bookshop”中的单词book及其复数)
3、 去掉dhcp中的注释及空行
4、 查找passwd中的UID在1-255之间的行。
5、 高亮显示“ip addr”结果里的IPv4地址
6、 高亮显示“ip addr”结果里的物理地址