您的位置:首页 > 其它

sed用法

2019-01-02 20:05 190 查看

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 用法