ここ最後の一致以降のすべての行を印刷するリンク。
しかし、最後の一致から2行だけ印刷したいです。どうすればいいですか?
ベストアンサー1
あなたが使用できるed
:
printf '%s\n' '?pattern?+1, ?pattern?+2 p' | ed -s file
ed
これはstdinにコマンドを送信します。この-s
フラグは、ファイルを読み込むときのバイト数の出力を抑制します。コマンドは次のように分類されます。
... , ... p
- 与えられた(...、...)アドレス範囲内の行を印刷します。?pattern?+1
- 戻る検索でpattern
1つ追加?pattern?+2
- 戻る検索でpattern
2つ追加
pattern
現在のデフォルトはファイルの最後の行なので、これらの検索はファイル内の最後の項目を探します。その後、オフセットは次の2行を選択します。