• linux正则表达式2---sed


    Stream Editor  字符流编辑器

    简称流编辑器。

    Sed是操作、过滤和转换文本内容的强大工具。

    常用功能有对文件内容快速实现增删改查,其中查询包括过滤和取行(取出指定行)。

    语法格式:sed [选项] [sed内置命令字符] [文件]

    匹配的内容要放在两个/中间

    选项

    -n 取消命令的默认输出,只显示匹配处理的行(否则会输出所有)

    -i  直接修改文件本身,而不是将修改后的内容展示出来。如果不使用-i只是修改内存中的数据,而不影响磁盘中的文件。

    -e 可以指定多个命令

    -f 将多条命令写入文件中,再根据文件内容依次执行

    sed -f ab.log test.txt

    -r 使用扩展正则

    内置命令符

    a 追加append,在指定行添加一行或多行文本

    sed '1,3a新增文本' my.txt    #在1到3行后面各新增一行

    d 删除delete,删除匹配的行

    i  插入insert,在指定行添加一行或多行文本

    p 打印print,打印匹配行的内容,常与-n一起使用

    s 替换substitute,s/regexp/replacement/g 用replacement替换regexp匹配的内容

    注:不使用g(全局匹配)时,每一行匹配到第一个后就跳到下一行再进行匹配,使用g的话是匹配到行尾。

    注:建议这里的 / 替换为 #

    这里第二个a没有匹配到是因为 ^a+ 的意思是以一个或多个a开头,这里开头是每行的开头。

    只匹配1到3行:sed '1,3s/^a/b/g' 1.txt

  • 相关阅读:
    用pyenv 和 virtualenv 搭建单机多版本python 虚拟开发环境
    如何快速地编写和运行一个属于自己的 MapReduce 例子程序
    Hive如何加载和导入HBase的数据
    kettle中的karaf设置
    sqoop学习
    windows 本地配置hadoop客户端
    python 随机分类
    python 皮尔森相关系数
    kettle配置命名参数
    idea配置scala和spark
  • 原文地址:https://www.cnblogs.com/1016391912pm/p/12866888.html
Copyright © 2020-2023  润新知