SED delete lines between two pattern matches

后端 未结 5 1666
花落未央
花落未央 2020-12-12 02:12

I am trying to replace lines between two pattern/string matches using SED see below. I need to delete lines below interface GigabitEthernet0/3 up to inter

5条回答
  •  暖寄归人
    2020-12-12 03:10

    after posting I found my answer: here's my solution

    cat somerouter.config | sed '/interface GigabitEthernet0\/3/,/interface GigabitEthernet0\/4/{/^interface GigabitEthernet0\/4/p;d;}' somerouter.config > somenewerrouter.config 
    

    Then I just add back interface 0/3 with

    sed -e '/interface\ GigabitEthernet0\/4/ i\
    interface\ GigabitEthernet0\/3\
     description\ NOT USED\
     shutdown\
    !' $filesw.tmp.1 > $filesw.tmp.2
    

提交回复
热议问题