Linux基础 7-7 set命令的使用

sed :流编辑器,也是行编辑器

sed的基本用法:

  • sed在读取一行数据时,将行数据存储于临时缓冲区内,称为模式模式空间
  • sed默认不会编辑源文件,仅对模式空间内的数据进行更改
  • 处理结束后,会将模式空间内容打印至屏幕

set语法:

  • sed [选项] '指定行号和执行方式' [文件名]
  • 指定行号:
    • m,n :从m行开始到n行结束
      • 如:1,100 : 从第一行开始,最后一行结束
      • 如果只有一个参数,表示精确匹配某一行
      • $ :表示最后一行
    • /条件/ :按条件匹配行
      • 如 :/^root/ :以root开头的行
    • /条件1/,/条件2/ :从第一次被条件1匹配到开始,到第一次被条件2匹配到结束,这中间的所有行
    • m ,+n :表示从m开始,到m行后面的n行结束
  • 选项:
    • -n :静默模式,不默认显示模式空间的内容
    • -i :直接修改源文件
    • -e [脚本1] -e [脚本2] :可以同时执行多个脚本
    • -f [脚本文件] [文件2] :脚本文件中每一行都为脚本,然后执行在文件2中
    • -r :表示使用正则表达式
  • 执行方式:
    • d :删除匹配的行
    • Linux基础 7-7 set命令的使用_第1张图片
    • Linux基础 7-7 set命令的使用_第2张图片

      Linux基础 7-7 set命令的使用_第3张图片

    • p :显示符合条件的行
    • a \string :在指定的行后面追加新行,内容为string
      • \n 可以换行
    • i \string :指定的行在前面追加新行,内容为string
    • nr[文件] :在n行后面,将文件的内容追加进去
    • Linux基础 7-7 set命令的使用_第4张图片
    • w [文件] :将指定范围内行内容存放到指定文件中
    • s/string1/string2/ :查找匹配string1并替换成string2,默认只替换每一行中第一次被匹配到的字符
      • 可以使用多种符号代替 '/' 如:s###、s@@@
      • 修饰符:
        • g :全局替换
        • Linux基础 7-7 set命令的使用_第5张图片
        • i :查找时忽略大小写
      • &[字符] :被匹配到的字符串,在其后面追加字符
      • 后项引用,针对字符串的个别字符
        • 以l开头的字符串,替换一个字符为L
  • 替换行首空格
  • 截取命令号

 

你可能感兴趣的:(Linux基础 7-7 set命令的使用)