zoukankan      html  css  js  c++  java
  • sed替换文本

    [root@localhost.localdomain  home]#cat test
    ###   @2=1492785988 /* INT meta=0 nullable=0 is_null=0 */
    ###   @3=3598278656 /* LONGINT meta=0 nullable=0 is_null=0 */
    

      

    要将test文件中@2=1492785988内容保留,首位的内容都去掉

    [root@localhost.localdomain  home]#sed -i.bak '/^###/{s/^### *//;s#/*.**/##;}' test
    

      

    因为有特殊字符*,需要脱意,/*.**/  这段的意思就是匹配/*  这里是正则.* 贪婪匹配   */   然后替换成空

    这里最大的亮点是-i.bak 这个用法,以前一直只知道-i参数直接修改源文件,但-i.bak  可以备份

    执行后,发现会多了一个test.bak备份文件

    [root@localhost.localdomain  home]#ls
    test  test.bak
    

      test.bak文件即为源文件

    ========================================

    补充:

    sed --help

    -i[SUFFIX], --in-place[=SUFFIX]
    edit files in place (makes backup if SUFFIX supplied)

    发现参数,后面有[SUFFIX],表示后缀,即i.bak,支持备份文件

    或者写成

    sed --in-place=.bak '/^###/{s/^### *//;s#/*.**/##;}' test

    测试成功

  • 相关阅读:
    sshd服务防止暴力破解
    使用秘钥ssh登录远程服务器
    SSH配置文件详解
    WinForm、wpf、silverlight三者关系
    silverlight 和winform的结合使用
    IIS在W7下使用
    c#多线程
    Silverlight的Socket通信
    wcf和webservice区别
    aspx向silverlight传值
  • 原文地址:https://www.cnblogs.com/irockcode/p/7008777.html
Copyright © 2011-2022 走看看