sed学习笔记

vi vim nano属于屏幕编辑器

sed属于流编辑器

 

sed基本格式:

 sed 范围 命令 文件

 

用法1 d删除

    sed学习笔记_第1张图片

  删除最后一行 使用$d

    sed学习笔记_第2张图片

 

用法2 用正则表达式来指明范围 必须用//

   

          sed学习笔记_第3张图片

          sed学习笔记_第4张图片

 

用法3 用,隔开表示多行

    sed学习笔记_第5张图片

 

用法4 用/xxx/,/xxx/隔开表示多行

    sed学习笔记_第6张图片

 

用法5 s替换命令

    基本格式 sed '范围s/待替换内容/替换内容/这里可以添加一个标记' 文件

    注意:待替换内容部分支持正则,替换内容部分不支持正则!除了\N和&

    如果没有指定范围,将会对所有行进行操作。

    s///后未指定标记,则只对每一行第一个匹配的关键字进行替换操作。

    sed学习笔记_第7张图片

    如果想替换全局或者指定替换,使用标记。如用g标记来替换全局。用数字来指定对第N次匹配的字符串进行操作。

    sed学习笔记_第8张图片

 

    下列操作将第1行的第3个冒号替换为---

    sed学习笔记_第9张图片

    又如:

    sed学习笔记_第10张图片

    对&的使用示例:(表示引用前面待替换部分)

    sed学习笔记_第11张图片

 

用法6 对选定部分做多个操作使用{},将操作内容用{}括起来,中间用;隔开。

    例:

    sed学习笔记_第12张图片

 

用法7 sed显示模式空间内容加参数p,不显示未操作到的行用-n

    sed学习笔记_第13张图片

 

用法8 用y来替换单个字符

    注意:单个字符之间有一一对应的关系

    sed '1y/abc/xyz/' file

    其中:a只能替换x,b只能替换y,c只能替换z,一一对应。

    sed学习笔记_第14张图片

 

用法9 在指定行后指定内容行使用a\

    sed学习笔记_第15张图片

 

   在指定行前指定内容行使用i\

 (可参照iptables -A 和iptables -I来记忆)

 sed学习笔记_第16张图片

 

用法10 替换更改 c\ (CENTOS6.5 x_64实测c和c\都可以实现,5.8的可能不能用c\)

    sed学习笔记_第17张图片  

 

 

   

 

 

 

 

   

   

 

 

 

 

 

 

   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(sed学习笔记)