- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
Linux操作系统sed流编辑器与awk文本处理工具
目录/Contents0102sed流编辑器awk文本处理工具
01sed流编辑器
sed基本语法sed是一种流编辑器,常用于在命令行中对文本进行处理和替换。它按照行处理输入文本,根据给定的编辑指令进行匹配和替换操作,并将结果输出到标准输出。sed支持正则表达式以及模式匹配和替换功能。其基本语法如下:其中,options表示sed的选项,例如-n、-i、-f等。files表示要编辑的文件,如果没有指定文件,也可以从标准输入读取文本。command表示sed的命令,也可以理解成编辑指令。命令使用一对引号标识,可以是单个命令或由多个命令组成,多个命令之间用分号隔开。sed命令基本示例如下:其中,s是命令,表示替换;old_string是要被替换的字符串或正则表达式的模式;new_string是替换后的新字符串;g是替换标志,即替换所有匹配到的字符串;file.txt是要进行替换操作的目标文件。sed[options]commandfilesseds/old_string/new_string/gfile.txt
sed选项sed选项可以控制sed的运行方式,改变sed的工作流程。常用的sed选项下表所示。序号选项描述1-n不自动输出模式空间的内容,用于禁止自动输出模式空间的内容,通常配合p命令使用来输出指定行。示例:sed-n2pfile.txt2-e允许在同一个sed命令中使用多个子命令。示例:sed-es/old_string/new_string/g-e3dfile.txt3-f将命令保存在文件中。使用-f选项来读取命令,可避免在命令行中使用很长的命令。示例:sed-fcommands.txtfile.txt4-i直接修改文件,而不是将结果输出到标准输出。示例:sed-is/old_string/new_string/gfile.txt5-r使用扩展正则表达式。示例:sed-rs/([a-z]+)([0-9]+)/\2\1/gfile.txt6-h显示帮助信息。示例:sed-h
sed命令sed命令分为两类,分别是地址指令和动作指令。常用的sed指令下表所示。地址指令,也称为定位指令,用于指定要应用动作指令的文本行范围,可以使用数字、正则表达式、first~step语法等。地址指令可以单独使用,也可以与动作指令一起使用。动作指令,用于对已定位的文本行进行操作,包括删除、修改、添加、输出等。动作指令必须与地址指令配合使用才能生效。序号指令描述1p输出指定行或匹配行。示例:sed-n2,4pfile.txt2=输出行号。示例:sed3=file.txt3a在指定行之后追加文本。示例:sed2aNewlinefile.txt4c用新文本替换匹配的行。示例:sed/RHEL/cUbuntuLinuxfile.txt5d删除匹配的行。示例:sed3dfile.txt6i在指定行之前插入文本。示例:sed3i\headertextfile.txt7a在指定行之后应用动作指令。示例:sed3a\append_stringfile.txt8s将匹配的文本替换为指定内容。示例:seds/RHEL/rhel9/gfile.txt9y将模式空间中的字符替换成指定的字符,比如y/source-chars/target-chars/,其中source-chars和target-chars的长度必须相同。示例:sedy/RHEL/cent/file.txt10r从指定文件中读取内容,并将内容插入指定行之后。示例:sed/OpenEuler/rfile.txtfile1.txt11w将匹配的行写入指定文件。示例:sed-n/RHEL/woutput.txtfile1.txt12q退出sed。示例:sed3qfile.txt
sed数据定位方法在sed中,可以使用数字和正则表达式来精确选择要操作的文本行,数字通常用于定位文件中的行号,正则表达式则可以用来匹配符合特定模式的文本。常用的sed数据定位方法如下表所示。序号数据定位方法描述1number直接根据行号匹配。示例:sed-n3pfile.txt2first~step从第first行开始,每隔step行进行操作。示例:sed-n3~2pfile.txt3$匹配最后一行。示例:sed-n$pfile.txt4/regexp/匹配正则表达式regexp的行。示例:sed-n/Open/pfile.txt、sed/^Open/dfile.txt5addr1,addr2匹配从addr1行到addr2行范围内的行
您可能关注的文档
- Linux系统管理基础项目教程课件 V1-2 Linux操作系统起源与发展.pptx
- Linux系统管理基础项目教程课件 V1-4 Linux目录结构.pptx
- Linux系统管理基础项目教程课件 V2-1 Linux命令行终端与命令格式.pptx
- Linux系统管理基础项目教程课件 V2-2 常用Linux命令分类.pptx
- Linux系统管理基础项目教程课件 V2-3 vim编辑器.pptx
- Linux系统管理基础项目教程课件 V3-1 网络配置基本概念.pptx
- Linux系统管理基础项目教程课件 V3-2 网络配置参数.pptx
- Linux系统管理基础项目教程课件 V3-3 常用网络命令.pptx
- Linux系统管理基础项目教程课件 V4-1 Linux用户和用户组概述.pptx
- Linux系统管理基础项目教程课件 V4-2 sudo权限.pptx
文档评论(0)