sed:
常用选项
- -n:不输出模式空间内容到屏幕,即不自动打印
- -e:多点编辑
- -f:FILE 从指定文件读取编辑脚本
- -r,-E:使用扩展正则表达式
- -i.bak:备份文件并原处编辑
- -s:将多个文件视为独立文件,而不是单个连续的长文件流
- #说明:
- -ir:不支持
- -i,-r:支持
- -ri:支持
- -ni:危险选项,会清空文件
地址格式
1、不给地址:对全文进行处理
2、单地址:
- #:指定的行,$:最后一行
- /pattern/:被此处模式所能够匹配到的每一行
3、地址范围:
- #,# 从#行到第#行,例如3,6即是从第3行到第6行
- #,+# 从#行到+#行,3,+4表示从3行到第7行
- /pat1/,/pat2/
- #,/pat/
- /pat/,#
4、步进:~
- 1~2 奇数行
- 2~2 偶数行
命令
- p 打印当前模式空间内容,追加到默认输出之后
- IP 忽略大小写输出
- d 删除模式空间匹配的行,并立即启用下一轮循环
- a [\]text 在指定行后面追加文本,支持使用\n实现多行追加
- i [\]text 在行面前插入文本
- c[\]test 替换行为单行或多行文本
- w file 保存模式匹配的行至指定文件
- r file 读取指定文件的文本至模式空间中匹配到的行后
- = 为模式空间中的行打印行号
- ! 模式空间中匹配行取反处理
- q 结束或退出sed
查找替换
- s/pattern/string/修饰符 查找替换,支持使用其他分隔符,可以是其他形式:s@@@,s###
- 替换修饰符:g、p、w、I
- g 行内全局替换
- p 显示替换成功的行
- w /PATH/FILE 将替换成功的行保存至文件中
- I,i 忽略大小写
版权声明:本文为qq_34948450原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。