第7章 流编辑器sed-【千锋教育】Linux Shell自动化运维(慕课版)
2023-03-21
|
37页
|
95人阅读
|
0人下载
教辅
资源信息
| 学段 | 中职 |
| 学科 | 职教专业课 |
| 课程 | 程序设计基础 |
| 教材版本 | - |
| 年级 | 高三 |
| 章节 | - |
| 类型 | 课件 |
| 知识点 | - |
| 使用场景 | 同步教学 |
| 学年 | 2023-2024 |
| 地区(省份) | 全国 |
| 地区(市) | - |
| 地区(区县) | - |
| 文件格式 | PPTX |
| 文件大小 | 1.55 MB |
| 发布时间 | 2023-03-21 |
| 更新时间 | 2023-04-09 |
| 作者 | 北京千锋互联科技有限公司 |
| 品牌系列 | - |
| 审核时间 | 2023-03-21 |
| 下载链接 | https://m.zxxk.com/soft/38208011.html |
| 价格 | 3.00储值(1储值=1元) |
| 来源 | 学科网 |
|---|
内容正文:
第7章 流编辑器sed
sed工作原理
sed语法格式及特点
sed用法
sed支持正则表达式
sed案例实战
学习目标
了解
掌握
掌握
掌握
了解sed及其工作原理
1
掌握sed用法
4
2
掌握sed语法
3
掌握sed特点
销售额 掌握知识 理解知识 熟悉知识 了解知识 2.5 2.5 2.5 2.5
sed工作原理
7.1
sed语法格式及特点
7.2
sed用法
7.3
☞点击查看本小节知识架构
sed支持正则表达式
7.4
sed案例实战
7.5
流编辑器sed(StreamEDitor)是最早支持正则表达式的工具之一,并且至今仍然被人们用来做文本处理。sed是一个脚本型,非交互式的编辑器,也就是说sed与常见的编译器(如vim)不同,sed没有交互式的编辑界面、光标移动以及庞大的快捷键功能。
7.1 sed工作原理
sed一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中(模式空间),接着用sed命令处理缓冲区中的内容,处理完成后,再把缓冲区的内容输出到屏幕。接着处理下一行,这样不断重复,直到文件末尾。除非使用重定向存储输出,否则文件内容并不改变。sed主要用来自动编辑一个或多个文件,简化对文件的反复操作,编写转换程序等。
sed工作原理如图所示,它有两个内存缓冲区,分别为模式空间和保持空间(暂存缓冲区)。
7.1 sed工作原理
一般情况下,sed首先把第一行的内容装入模式空间,处理后输出屏幕;然后继续把第二行装入模式空间(替换掉模式空间里第一行的内容),再进行处理;依次循环,直至结束。
图流程图解释为以下三步。
第一步:sed每次将标准输入中的内容中的一行读入模式空间。
第二步:之后根据模式空间中的匹配条件进行匹配,符合条件进入下一阶段即普通编辑,不满足则默认至标准输出,结束。
第三步:普通编辑之后分三个阶段。(1)普通编辑之后选择性显示至S
TDOUT,结束;(2)进入保持空间进行高级编辑,编辑结束后选择性显示至模式空间,之后再次根据编辑命令重复(2)(3);(3)若出现多次编辑命令,则需要再返回模式空间根据编辑条件再次进行(2)(3)步骤。
7.2 sed语法格式及特点
7.2.1
sed语法格式
返回目录
7.2.2
sed特点
7.2 sed语法格式及特点
sed从文件中读取数据,如果没有输入文件,则默认对标准输入进程数据进行处理,sed可以将数据进行替换、删除、新增、选取特定行等功能,接下来先了解下sed语法格式。
7.2.1 sed语法格式
sed命令语法格式为:
或:
7.2 sed语法格式及特点
上面命令格式中,展示了sed的两种使用方法。第一种调用方法中,将编辑指令直接放选项后面,这是最为常见的方法。当执行一些较为复杂的编辑操作时,使用的编辑命令可能会很长,这时通常将编辑指令放入一个脚本文件中,通过第二种方法来调用sed编辑文件。
sed和grep不一样,无论是否找到指定的模式,它的退出状态都是0;,只有当命令存在语法错误时,sed的退出状态才是非0。
7.2.2 sed特点
sed编辑器是一个很强大的工具,它有如下特点:
(1) 非交互,基于模式匹配的过滤及修改文本。
(2) 逐行处理,太大的文件使用sed会显得格外有优势。
(3) 可实现对文本的输出、删除、替换、复制、剪切、导入、导出等各种编辑
(4) 脚本化,在Shell脚本编程中使用sed比vim方便。
7.2 sed语法格式及特点
sed使用规则和选项如表所示。
7.3 sed用法
表是常见command选项,用于如何新增和删除的操作,具体如下。
7.3 sed用法
表是高级command选项,具体如下。
7.3 sed用法
表是替换标记选项,具体如下。
7.3 sed用法
sed在文件中查找模式时也可以使用正则表达式(RE)和各种元字符。正则表达式是括在斜杠间的模式,用于查找和替换,以下是sed支持的元字符。
使用基本元字符集如下所示:
7.4 sed支持正则表达式
使用扩展元字符集如下所示:
以/etc/passwd为例,取出文件/etc/passwd前十行,具体如下所示。
取出/etc/passwd文件前十行。
7.4 sed支持正则表达式
把文件/etc/passwd前十行重定向到文件passwd中。
7.4 sed支持正则表达式
下面以文件passwd为操作样本源文件来介绍sed用法,由于sed选项为空,使用sed工作原理打印passwd。
使用sed工作原理打印passwd文件。
以上命令使用了sed的工作原理自动打印文件passwd的内容,下面对文件passwd做删除操作,具体如下所示。
7.4 sed支持正则表达式
下面对使用sed 加上 p 命令对 passwd文件进行打印操作,由于sed默
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。