• sed的额外用法(网摘)


    #在我开始动手写一个一个的脚本的时候才会看到更多的用法

    1. 在某行的前一行或后一行添加内容(前提是要确定行的内容)

    # 匹配行前加
    sed -i '/allow/ideny' httpd.conf
    
    #匹配行后加
    sed -i '/allow/adeny' httpd.conf
    

      statement:这里的   i  表示行前, a表示行后 ==> 别人的记忆方法:a = after ,i = in front

    为了书写方便,还有另外的写法:

    sed -i '/2222/a333333' test.txt
    
    sed -i '/2222/i3333333' test.txt
    

     2. 确认具体行号,在某行前后加内容

    # 第4行前
    sed -i 'N;4add' a.txt
    
    # 第4行后
    sed -i 'N;4delete' a.txt
    
    #这里可以引用环境变量, 但是单引号要换成双引号
    $line=4
    echo $line
    4
    sed -i "N;$lineadd" a.txt
    

     3. 删除指定行的前一行或后一行(看不懂可以查看man手册)

    删除指定文件的上一行
    sed -i -e :a -e '$!N;s/.*n(.*directory)/1/;ta' -e 'P;D' server.xml
    删除指定文件的下一行
    sed -i '/pattern="%/{n;d}' server.xml 
    
  • 相关阅读:
    题解 P3071 【[USACO13JAN]座位Seating】
    [luogu]P3398 仓鼠找sugar
    快速输入输出
    Luogu P3939 数颜色
    HEOI2016/TJOI2016 排序
    POI2011 DYN-Dynamite
    USACO17JAN Promotion Counting
    AHOI2008 聚会
    Luogu P4907 A换B problem
    网络流24题 骑士共存问题
  • 原文地址:https://www.cnblogs.com/frankielf0921/p/7519096.html
Copyright © 2020-2023  润新知