我有一个结构如下的大型文本文件:
---
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 是适合这项工作的工具吗?
对于任何有类似问题的人:awk 为我解决了这个问题。
awk 'BEGIN { RS = "---" } /searchterm/' input.txt > edit.txt
祝你有美好的一天!