如何搜索和复制周围的文字?

问题描述 投票:0回答:1

我有一个结构如下的大型文本文件:


---

NAME: Some Name

Random
number
of lines with info.

---

NAME: Another Name

Random
number
of lines
with different info.

---

…

搜索“不同”时,我想在新文件中编辑从“NAME:另一个名称”到“---”的所有内容。

某个搜索词可能会多次出现。我希望将它们全部放在一个文件中。

grep different file.txt > edit.txt
将包含“不同”的行放入新文件中。

但我不知道如何对两个“---”之间的所有内容做同样的事情。

grep 是适合这项工作的工具吗?

shell search grep full-text-search
1个回答
0
投票

对于任何有类似问题的人:awk 为我解决了这个问题。

awk 'BEGIN { RS = "---" } /searchterm/' input.txt > edit.txt

祝你有美好的一天!

© www.soinside.com 2019 - 2024. All rights reserved.