码迷,mamicode.com
首页 > 其他好文 > 详细

sed用法

时间:2019-01-02 22:17:25      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:使用   sed   path   命令   屏幕   指定   不包含   支持   正则表达   

sed [option]... ‘script‘ inputfile...
script:地址命令
opt:
-n 不输出模式空间内容到屏幕,即不自动打印
-e 多点编辑
-r 支持使用扩展正则表达式
-i.bak 备份文件并原处编辑 ?
地址:(1) 不给地址:对全文进行处理
(2) 单地址: #: 指定的行,$:最后一行 ,/pattern/:被此处模式所能够匹配到的每一行
(3) 地址范围: #,#从#行到#行 ,#,+# ,/pat1/,/pat2/ , #,/pat1/
(4) ~:步进 1~2 奇数行 2~2 偶数行
使用分组进行后向引用
命令:
d 删除模式空间匹配的行,并立即启用下一轮循环
p 打印当前模式空间内容,追加到默认输出之后
a []text 在指定行后面追加文本,支持使用\n实现多行追加
i []text 在行前面插入文本
c []text 替换行为单行或多行文本
w /path/file 保存模式匹配的行至指定文件
r /path/file 读取指定文件的文本至模式空间中匹配到的行后
s/pattern/newpattern/g行内全局替换 p打印替换成功的行 w /PATH/FILE将替换成功的行保存至文件中
高级编辑命令:
P: 打印模式空间开端至\n内容,并追加到默认输出之前 ?
h: 把模式空间中的内容覆盖至保持空间中 ?
H:把模式空间中的内容追加至保持空间中 ?
g: 从保持空间取出数据覆盖至模式空间 ?
G:从保持空间取出内容追加至模式空间 ?
x: 把模式空间中的内容与保持空间中的内容进行互换 ?
n: 读取匹配到的行的下一行覆盖至模式空间 ?
N:读取匹配到的行的下一行追加至模式空间 ?
d: 删除模式空间中的行 ?
D:如果模式空间包含换行符,则删除直到第一个换行符的模式空间中的文本, 并不会读取新的输入行,而使用合成的模式空间重新启动循环。如果模式空间 不包含换行符,则会像发出d命令那样启动正常的新循环

sed用法

标签:使用   sed   path   命令   屏幕   指定   不包含   支持   正则表达   

原文地址:http://blog.51cto.com/14133915/2338033

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!