【发布时间】:2014-11-15 13:13:35
【问题描述】:
我有一个文件,格式如下。我想搜索一个词,例如'hello' 出现在模式之后和 DocName 之前的行中。如果它存在,有多少这样的模式有它? 如何使用 grep/awk/sed 在一行中执行此操作?
预期的输出是:假设我正在搜索单词 'hello' 是否存在,那么在这种情况下它存在于第 1、第 2 和第 4 个模式中,所以输出为 3,因为我们有三个 'hello' 存在于三个模式。请注意,即使在第一个模式中多次出现 'hello',它仍然算作一次。
:
:
:
DocName: abjrkj.txt
schema:
abs
askj
djsk
djsk
hello
adj
hello
DocName: abjrkj.txt
schema:
abs
askj
djsk
djsk
adj
hello
DocName: aasjrkj.txt
schema:
absasd
askjas
djsksa
djskasd
adjsg
DocName: ghhd.txt
schema:
absg
fdgaskj
dgdjsk
dgdfdjsk
drgadj
hello
:
:
:
【问题讨论】:
-
上述输入的预期输出是什么?
-
@lanc 使用各种输入制作更好的示例并编写预期的示例输出
-
我已经编辑了问题,看看。
-
@Lanc:过去你接受的答案太少(3/16)。
-
@lanc 计算 wc 是合适的选择!