- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用sed编辑器
使用 sed 编辑器
作者:Emmett Dulaney
sed 编辑器是 Linux 系统管理员的工具包中最有用的资产之一,因此,有必要彻底地了解
其应用
Linux 操作系统最大的一个好处是它带有各种各样的实用工具。存在如此之多不同的实用
具,几乎不可能知道并了解所有这些工具。可以简化关键情况下操作的一个实用工具是
sed。它是任何管理员的工具包中最强大的工具之一,并且可以证明它自己在关键情况下非
常有价值。
sed 实用工具是一个 “编辑器”,但它与其它大多数编辑器不同。除了不面向屏幕之外,它
还是非交互式的。这意味着您必须将要对数据执行的命令插入到命令行或要处理的脚本中。
当显示它时,请忘记您在使用 Microsoft Word 或其它大多数编辑器时拥有的交互式编辑文
件功能。sed 在一个文件(或文件集)中非交互式、并且不加询问地接收一系列的命令并执
行它们。因而,它流经文本就如同水流经溪流一样,因而 sed 恰当地代表了流编辑器。它
可以用来将所有出现的 Mr. Smyth 修改为 Mr. Smith,或将 tiger cub 修改为
wolf cub。流编辑器非常适合于执行重复的编辑,这种重复编辑如果由人工完成将花费大
量的时间。其参数可能和一次性使用一个简单的操作所需的参数一样有限,或者和一个具有
成千上万行要进行编辑修改的脚本文件一样复杂。sed 是 Linux 和 UNIX 工具箱中最有用
的工具之一,且使用的参数非常少。
sed 的工作方式
sed 实用工具按顺序逐行将文件读入到内存中。然后,它执行为该行指定的所有操作,并在
完成请求的修改之后将该行放回到内存中,以将其转储至终端。完成了这一行上的所有操作
之后,它读取文件的下一行,然后重复该过程直到它完成该文件。如同前面所提到的,默认
输出是将每一行的内容输出到屏幕上。在这里,开始涉及到 两个重要的因素—首先,输出
可以被重定向到另一文件中,以保存变化;第二,源文件(默认地)保持不被修改。sed 默
认读取整个文件并对其中的每一行进行修改。不过,可以按需要将操作限制在指定的行上。
该实用工具的语法为:
sed [options] {command} [filename]
在这篇文章中,我们将浏览最常用的命令和选项,并演示它们如何工作,以及它们适于在何
处使用。
替换命令
sed 实用工具以及其它任何类似的编辑器的最常用的命令之一是用一个值替换另一个值。用
来实现这一 目的的操作的命令部分语法是:
s/{old value}/{new value}/
因而,下面演示了如何非常简单地将 tiger 修改为 wolf:
$ echo The tiger cubs will meet on Tuesday after school | sed s/tiger/wolf/
The wolf cubs will meet on Tuesday after school
$
注意如果输入是源自之前的命令输出,则不需要指定文件名—同样的原则也适用于 awk、
sort 和其它大多数 Linux\UNIX 命令行实用工具程序。
多次修改
如果需要对同一文件或行作多次修改,可以有三种方法来实现它。第一种是使用 -e 选项,
它通知程序使用了多条编辑命令。例如:
$ echo The tiger cubs will meet on Tuesday after school | sed -e s/tiger/wolf/ -e
s/after/before/
The wolf cubs will meet on Tuesday before school
$
这是实现它的非常复杂的方法,因此 -e 选项不常被大范围使用。更好的方法是用分号来
分隔命令:
$ echo The tiger cubs will meet on Tuesday after school | sed s/tiger/wolf/; s/after/before/
The wolf cubs will meet on Tuesday before school
$
注意分号必须是紧跟斜线之后的下一个字符。如两者之间有一个空格,操作将不能成功完成,
并返回一条错误消息。这两种方法都很好,但许多管理员更喜欢另一种方法。要注意的一个
关键问题是,两个撇号 ( ) 之间的全部内容都被解释为 sed命令。直到您输入了第二个
撇号,读入这些命令的 shell程序
您可能关注的文档
- 一般论文 日本货物鉄道(株)EH800形式交流电気机.PDF
- 不打针 不吃药 不动刀 专人服务.PDF
- 世界农产贸易改革对澳洲牛肉市场之影响.PDF
- 东北大学全学教育科目 情报基础 A.ppt
- 东京都立 大田桜台高等学校平成24年度 学校説明会.ppt
- 东日本大震灾 长浜赤十字病院 救护班活动记録.PDF
- 个人简历 - 浙江工商大学校友办公室.doc
- 中 华 民 国 高 压 暨 海 底 医 学 会 ASSOCIATION.PDF
- 东京急行电鉄株式会社纳7000形电车用 停车用电力.PDF
- 为什么要学习微分方程数值解 大学数学实验.PDF
- 2024年江西省寻乌县九上数学开学复习检测模拟试题【含答案】.doc
- 2024年江西省省宜春市袁州区数学九上开学学业水平测试模拟试题【含答案】.doc
- 《GB/T 44275.2-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第2部分:术语》.pdf
- 中国国家标准 GB/T 44275.2-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第2部分:术语.pdf
- GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构.pdf
- 《GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构》.pdf
- 中国国家标准 GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构.pdf
- GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南.pdf
- 中国国家标准 GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南.pdf
- 《GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南》.pdf
文档评论(0)