【发布时间】:2020-02-14 11:38:12
【问题描述】:
我有一个日志文件,其中包含多次重复的模式Fre --。我只需要删除此模式的第一次出现和之后的 20 行,并保持其他匹配不变。我需要在 bash 终端中执行此操作,最好使用 sed 或 awk 或 perl。非常感谢您的帮助。
我试过了
sed -e '/Fre --/,+20d' log.log
但它会删除所有模式和之后的 20 行。我只想删除第一个模式
这里有一个或多或少类似的问题和一些答案:How to remove only the first occurrence of a line in a file using sed 但我不知道如何更改它以在第一次匹配后删除 20 行
【问题讨论】:
-
你尝试了什么?
-
你试过什么?你有什么问题?请向我们展示您的代码。
-
我试过 sed -e '/Fre --/,+20d' log.log 但它删除了所有模式和之后的 20 行。我只想删除第一个模式