• 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 :删除匹配的行
      • p :显示符合条件的行
      • a string :在指定的行后面追加新行,内容为string
        • 可以换行
      • i string :指定的行在前面追加新行,内容为string
      • nr[文件] :在n行后面,将文件的内容追加进去
      • w [文件] :将指定范围内行内容存放到指定文件中
      • s/string1/string2/ :查找匹配string1并替换成string2,默认只替换每一行中第一次被匹配到的字符
        • 可以使用多种符号代替 '/' 如:s###、s@@@
        • 修饰符:
          • g :全局替换
          • i :查找时忽略大小写
        • &[字符] :被匹配到的字符串,在其后面追加字符
        • 后项引用,针对字符串的个别字符
          • 以l开头的字符串,替换一个字符为L
    • 替换行首空格
    • 截取命令号
  • 相关阅读:
    [Leetcode 11] 112 Path Sum
    [Leetcode 14] 7 Reverse Integer
    [Leetcode 12] 126 Word Ladder II TO_BE_ADDED
    [Leetcode 13] 1 Two Sum
    [Leetcode 7] 101 Symmetric Tree
    [Leetcode 9] 110 Balanced Binary Tree
    [Leetcode 15] 8 String to Integer (atoi)
    [Leetcode 8] 104 Maximum Depth of Binary Tree
    [Leetcode 16] 9 Palindrome Number
    [Leetcode 10] 111 Minimum Depth of Binary Tree
  • 原文地址:https://www.cnblogs.com/laogama/p/13034474.html
Copyright © 2020-2023  润新知