0

ディレクトリからパターンをgrepし、そのパターンの4行前に、各結果の一番上の行をさらにgrepする必要がありますが、方法がわかりません. これについて提案してください。

例で説明された問題:

ディレクトリ「ディレクトリ」には、20130611 や 2013400 などの名前の異なる複数のファイルがあります。ファイルに書き込まれたデータは、次のようなものです。

[
My name is 
.....
......
......
Name has been written above
]

現在、すべてのインスタンスで「名前は上に書かれています」は行単位で書かれていますが、「私の名前は」の代わりに値が変化し続けるため、この特定の行をすべての出現からgrepしたいと思います。

結果を得るためにいくつかの方法を提案してください。

前もって感謝します。

4

2 に答える 2

0
a@x:/tmp$ cat namefile
[
My name is 
.....
......
......
Name has been written above
]
a@x:/tmp$ cat namefile | grep -B 4 "Name has been written above" | head -1
My name is 

「4」は N に置き換えることができます。つまり、ターゲット データは grep された行の上にあります。

于 2013-06-18T12:53:12.363 に答える