gpt4 book ai didi

sed - 按特定行范围内的模式删除行

转载 作者:行者123 更新时间:2023-12-03 22:54:05 24 4
gpt4 key购买 nike

我想使用 sed 通过正则表达式模式从文件中删除行就像在这个问题 Delete lines in a text file that containing a specific string , 但仅限于行范围内(而不是在整个文件中)。我想从某个行号开始直到文件结束。

这就是我与 tail 结合使用的方式:

  • tail -n +731 file|sed '/some_pattern/d' >> file
  • 手动删除 file 中的编辑范围来自上一步

  • 是否有更短的方法可以使用 sed只要?
    类似 sed -i '731,1000/some_pattern/d' file ?

    最佳答案

    你可以用这个sed ,

    sed -i.bak '731,1000{/some_pattern/d}' yourfile

    测试:
    $ cat a
    1
    2
    3
    13
    23
    4
    5

    $ sed '2,4{/3/d}' a
    1
    2
    23
    4
    5

    关于sed - 按特定行范围内的模式删除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32760843/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com