zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    Java中List和ArrayList的区别(转)
    Java的JDBC事务详解(转)
    Java JDBC批处理插入数据操作(转)
    celery入门
    Python装饰器与面向切面编程
    python 中类方法@classmethod
    Virtualenv: 一个Python环境管理工具(windown版本)
    python操作excel之 模块 xlrd
    django多条件筛选搜索(项目实例)
    jQuery选择器总结
  • 原文地址:https://www.cnblogs.com/1016391912pm/p/12866888.html
Copyright © 2011-2022 走看看