Unix -microfocus:在特定单词后面找一个单词

时间:2015-12-15 08:56:39

标签: shell unix grep

我想知道在一个特定单词之后在文件中找到单词,我用一个例子来解释。

FILE.TXT

03 WS-COUNTER            PIC X(03).

PROCEDURE DIVISION.

A-MAIN 

MOVE ZEROES TO WS-COUNTER

在此示例中,我想知道如何在WS-COUNTER之后找到单词PROCEDURE DIVISION。如果我在unix中执行grep -i "WS-COUNTER" File.txt

我发现两个积极的结果,但我想只找到第二个。

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

单个grep不容易,你可以试试这个

AWK

awk '/PROCEDURE DIVISION/{F=1} F && /WS-COUNTER/{print;exit}' File.txt

SED

sed -n '/PROCEDURE DIVISION/,/WS-COUNTER/{ /WS-COUNTER/{p;q;}}' File.txt