Linux shell编程学习笔记---第三章

3.1正则表达式基础

正则表达式的主要功能是文本查询和字符串操作。实际上就是字符串过滤。

正则表达式包括普通字符(a,b,1,2等)他们都只有字面意思和元字符(*,^等)他们超越了字面意思,被给予了附加的含义。

正则表达式一般分为基本正则表达式和扩展正则表达式。

基本正则表达式的元字符集合及其意义,如图中表格所示:

特殊的正则表达式^$匹配空行。

3.2 正则表达式的扩展

 

3.3通配

bash shell中的通配,元字符的含义发生了一些变化。具体的变化可以参见教材,由于通配使用频率不高,所以这里不再赘述。

3.4grep命令

强大的文本搜索工具,它使用正则表达式来搜索文本,并且把匹配的行打印出来。

grep的一般格式为:grep [选项] [模式] [文件]

它在一个或多个文件中搜索满足模式的文本行,把结果打印到输出屏幕。

3.4.2 grep命令可以和正则表达式一起使用,这样能提高更强大的搜索功能。

5.POSIX

 

 

 

 

 

-----------------------------上机练习-----------------------------

1.分析下面的正则表达式表达了什么含义

(1)所有已kK开头的单词。

(2)重复字符k,次数为6到8次。

(3)重复字符k,至少6次

(4)重复字符k,10次

(5)NEW YEAR

(6)空行

(7)匹配任意两个阿拉伯数字加上一个小写字母

(8)一个大写的英文字母,重复1到3次,加上一个逗号,重复一个阿拉伯数字5次

(9)以.开头,后面加上任意的两个字符。

(10)p和z以外的某个英文字符重复0到n次,再以.结尾

2.应写为:[0-9]*.[a-z][a-z]

3.答案分别是*.doc  *.txt  *.ppt  *.docx  *.pptx

4.grep -n charpter Windows

5.也不会进行搜索了吧,因为后面指定了要搜索以pem结尾的文件。

6. 第一个命令是统计空白行,第二个命令是统计非空白行,第三个命令不太清楚。。。。。

7. grep -cr ^$ *     grep -cr ^[^$] *

8.我觉得不会再显示无效选项错误了  因为-n在前面已经表示选项了。

9.第四条命令应该表示的是查找<the>吧

 

posted on 2017-02-17 16:27  毛无语666  阅读(147)  评论(0编辑  收藏  举报

导航