笔记部分

基础正则表达式:

^   第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命令的工作原理

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高级应用第九章-正则表达式的更多相关文章

  1. 鸟哥的Linux私房菜——第九章

    视频链接,推荐看B站 土豆网:http://www.tudou.com/programs/view/XmMDbjJHJC8 B站:http://www.bilibili.com/video/av966 ...

  2. 鸟哥的linux私房菜——第九章学习(vim编辑器)

    第九章vim编辑器 1.0).vi与vim Linux下文本界面的文书编辑器通常会有常常听到的就有: emacs, pico, nano, joe, 与 vim 等等. vi的优势: 所有的 Unix ...

  3. 【读书笔记】C#高级编程 第九章 字符串和正则表达式

    (一)System.String类 System.String是一个类,专门用于存储字符串,允许对字符串进行许多操作.C#提供了关键字string和相关的语法,以便使用这个类更轻松. 例子: 使用运算 ...

  4. Linux 笔记 - 第十一章 正则表达式

    博客地址:http://www.moonxy.com 一.前言 正则表达式(英语为 Regular Expression,在代码中常简写为 regex.regexp 或 RE),是使用单个字符串来描述 ...

  5. Linux学习笔记(第九章)

    压缩概念: gzip和zcat: 先进版bzip2,bzcat bzip -d  已压缩文档名 bzip -z 需压缩文档名 bzcat 解压文档打印到屏幕 tar:打包指令 注意:压缩最好拿掉根目录 ...

  6. Knockout应用开发指南 第九章:高级应用举例

    原文:Knockout应用开发指南 第九章:高级应用举例 1   Contacts editor 这个例子和微软为演示jQuery Data Linking Proposal例子提供的例子一样的提供的 ...

  7. 第九章:Python高级编程-Python socket编程

    第九章:Python高级编程-Python socket编程 Python3高级核心技术97讲 笔记 9.1 弄懂HTTP.Socket.TCP这几个概念 Socket为我们封装好了协议 9.2 cl ...

  8. JavaScript高级程序设计:第九章

    第九章 一.使用能力检测 能力检测的目标不是识别特定的浏览器,而是识别浏览器的能力.能力检测的基本模式如下: if ( object.propertyInQuestion ) { //使用object ...

  9. 《linux就该这么学》第十一节课: 第九章,网卡绑定与sshd服务

    8.4.服务的访问控制列表 TCPwrappers是RHEL7中默认启用的流量监控程序,能够对服务做出允许或拒绝. TCPwrappers服务由两个文件控制:  /etc/hosts.allow    ...

随机推荐

  1. 数学--数论--POJ 1061青蛙的约会 (扩展欧几里得算法)

    青蛙的约会 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很重要的事情,既没有问 ...

  2. 图论--DFS总结

    1.Key word:①双向DFS  ②回溯 今天就看到了这么多DFS,其实DFS更倾向于枚举所有情况. 对于双向DFS,我们考虑看看最短路,起点做一下搜索,记录一下到所有点的距离,终点做一下搜索,记 ...

  3. spring boot中使用AJAX请求,并将回调函数赋值给input输入框

    HTML: <script>/* $(document).ready(function(){} 页面加载事件,加载完页面之后执行 */ $(document).ready(function ...

  4. Oracle触发器之替代触发器

    替代触发器 替代视图增删改操作.视图可以认为成逻辑上的一张表,类似于把一个sql语句的执行结果永久的像表存储到数据 库中,视图一般用来做查询. 创建视图的语法: create view 视图名称 as ...

  5. Spring官网阅读(五)BeanDefinition(下)

    上篇文章已经对BeanDefinition做了一系列的介绍,这篇文章我们开始学习BeanDefinition合并的一些知识,完善我们整个BeanDefinition的体系,Spring在创建一个bea ...

  6. 2020年python开发微信小程序,公众号,手机购物商城APP

    2020年最新的技术全栈,手机短信注册登陆等运用, 精准定位用户 支付宝支付 以及前后端从0到大神的全部精解 2020年最新的技术全栈,手机短信注册登陆等运用, 精准定位用户 支付宝支付 以及前后端从 ...

  7. 【蓝桥杯C组】备赛基础篇之高精度算法

    一.高精度加法 思路: 运用vector数组(c选手可用len来记录数组长度,数组去保存数字)将存入字符串里面的数字符倒叙保存,按照小学的加法列式,相加保存进位即可.具体参考代码. 详细代码解析: # ...

  8. 【教程】高德地图使用ECharts实现数据可视化

    关于百度地图结合ECharts实现数据可视化的资料已经很多了,毕竟是官方提供支持的,这里就不再赘述.今天我们来讲一下让高德地图与ECharts结合来实现数据可视化图表的展示. 一.ECharts 高德 ...

  9. 黑马程序员_毕向东_Java基础视频教程——进制转换之负数二进制(随笔)

    进制转换之负数二进制 负数的二进制表现形式 6 = 110 -6 : 其实就是 6 的二进制取反再 + 1 一个整数在内存中是占 4 个字节 **取反:将二进制里的 1 变成 0,0 变成 1. 以6 ...

  10. Spring MVC 函数式编程进阶

    1. 前言 上一篇对 Spring MVC 的函数式接口编程进行了简单入门,让很多不知道的同学见识了这种新操作.也有反应这种看起来没有传统写法顺眼,其实大家都一样.但是我们还是要敢于尝试新事物.Jav ...