您的位置:首页 > 其它

文本处理工具之 sed1

2020-10-15 21:39 706 查看

概念:默认是行处理

sed是流编辑器,一次处理一行内容,把当前处理的行存储在临时缓冲区中,称为模式空间。接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕,然读入下行,执下一循环。没有使用特殊命令,会在两个循环之间清空模式空间,但不会清空保留空间。直到文件末尾。文件内容并没有改变,除非使用重定向定向输出存储。默认是打印

sed   option  [sed脚本] file

常用选项:

-n:不输出模式空间内容到屏幕,即不自动打印

-e:多点编辑

-f  /path/script_file       从指定文件中读取编辑脚本

-r: 支持使用扩展正则表达式

-i.bak(后缀可以自己随性起)     备份文件并原处编辑

地址定界:

1.不给地址:对全文进行处理

2.单地址:

#:指定的行,$:最后一行

/pattern/:被 此处模式所能够匹配到的每一行

3.地址范围:

#,#

#,+#

/pat1/,/pat2/

#,/pat1/

4.~: 步进

1~2 奇数行

2~2偶数行

sed编辑命令:

d           删除模式空间匹配的行,并立即启用下一轮循

环

p           打印当前模式空间内容,追加到默认输出之后

a [\]text   在指定行后面追加文本,支持使用\n实现多行

追加

i [\]text     在行前面插入文本

c [\]text    替换行为单行或多行文本

w /path/file  保存模式匹配的行至指定文件

r /path/file    读取指定文件的文本至模式空间中匹配到

的行后

=                为模式空间中的行打印行号

!               模式空间中匹配行取反处理
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: