linux高级应用第九章-正则表达式

笔记部分

基础正则表达式:

^   第1个符号 ,以什么什么开头   ^m

$  第2个符号,以什么什么结尾  m$    ,还表示空行,或空格,可以用cat  -An 试一下

^$ 第3个符号,空行  什么符号都没有

.  第4个符号,表示任意 “一个字符” 

\  第5个符号, 转义字符不解析特殊符号的含义 ,  \n 相当于回车键 ,  \t  相当于tab键

* 第6个符号,表示前一个字符连续出现了0次或0次以上

.* 第7个符号,表示任意字符,包括空行,正则表达式表示所有或连续出现的。

[ ] 第8个符号,中括号,中括号内每次查找一个字符。

[^] 第9个符号,[^acb] , 表示排除 a,b,c

扩展正则表达式:

+ 第10个符号,表示前一个字母连续出现1次或1次以上

 

扩展正则表达式:

+ 第10个符号,表示前一个字母连续出现1次或1次以上

|  第11个符号,(竖线)表示  " 或者 "  的意思

() 第12个符号,(小括号)表示一个整体  反向引用 / 后向引用

例如:sed  -r   ‘s#(..)(..)(..)#\1<(\2)>\3#g‘    ##后向引用

{} 第13个符号,{n,m} 前一个字符至少连续出现N次,最多连续出现m次

a{1,10}  ##表示  a最少连续出现1次,最多连续出现10次

 

grep 参数:

-E 等于 egerp

-n 显示行号

-i 不区分大小写

-o 只输出匹配的内容

 

sed 参数:

-n 指定行号

r 支持扩展正则表达式

‘s#123#456#g‘ 表示把123 替换成456

 

awk 参数:

-F 指定分隔符

NR 表示行号

$ 表示取某一列

习题:

1.正则表达式的作用是什么

通过特殊符号,实现快速查找,删除,替换某个特定字符串

2.列出Linux习题中支持正则表达式的命令工具,并说其支持的正则表达式类型

grep与sed支持基础正则表达式,egrep,awk支持扩展正则表达式

3.Linux系统下执行‘grep -n ‘sh[io]r‘ wtxt.txt‘命令的作用是什么

找出test.txt文件中关键字shirt,或,short

5.Linux系统下执行“egrep -n ‘a(xyz)+c‘ test.txt”命令的作用是什么

6.使用扩展正则表达式如何过滤掉yum.conf文件中的空行与“#”号注释的行

7.Linux系统下执行“sed -n ’/\<wood\>/p`test.txt命令的作用什么”

8.Linux系统下执行“sed /the/s/o/O/g test.txt 命令的作用是什么

9.简述awk命令的工作原理

linux高级应用第九章-正则表达式

 

 

10Linux系统下执行“awk -F:‘/bash$/ {print |"wc -l"} /etc/passwd’”命令的作用是什么

11.sshd_config文件中“listenaddress 172.16.16.22”与“usedns no”配置项的作用分别是什么

监听地址为172.16.16.22,不开启dns反向解析

12.ssh -p 2345 jerry@172.16.16.22命令中-p选项的作用是什么

指定端口

13.Linux系统中tcp wrappers机制对应的允许,拒绝策略文件分别是什么

/etc/hosts.allow和/etc/hosts.deny

 

linux高级应用第九章-正则表达式

上一篇:学习Linux系统需要明白的一些事情


下一篇:Mac下使用pygame实现飞机大战load图片问题