grep --before-context 5
試合前の5行を表示します。
試合前にすべてを表示したい。grep --before-context 99999999
を実行する うまくいくでしょうが、それはあまり…プロフェッショナルではありません。
一致するまでのすべてのファイルを表示するにはどうすればよいですか?
承認された回答:
そのためにはSedの方が適しています。
ただ:
sed '/PATTERN/q' FILE
これは次のように機能します:
各行について、/PATTERN
と一致するかどうかを確認します :
- はいの場合、印刷して終了します
- それ以外の場合は、印刷します
PATTERN
が表示されるとすぐに、これが最も効率的なソリューションです。 、終了します。 q
なし 、sedはファイルの残りの部分を読み取り続け、それに対して何もしません。大きなファイルの場合、違いが生じる可能性があります。
このトリックは、head
をエミュレートするためにも使用できます :
sed 10q FILE