本当に申し訳ありません…脳が凍り付いて理解できません。私はsedとパターンスペースを使用していますが、パターンを含む行のすべてのアイテムを削除し続けます。
パターンを含む最初の行を削除してから、同じパターンを含む別の行を削除したいと思います。
私が作業しているリストには、同じパターンを含む2行以上の連続行がありません。
モードは「クエリ」です
私のデータは次のとおりです。
Query: A ANNUAL SERVICE FEE
SourceField: EXP-ANNUAL: SourceTable: MASTER
Query: A ANNUAL SERVICE FEE
Query: A Edie ACTIVE LNS
SourceField: LOAN-NO: SourceTable: MASTER
Query: A Edie ACTIVE LNS
SourceField: LO: SourceTable: MASTER
これが私が望むものです:
Query: A ANNUAL SERVICE FEE
SourceField: EXP-ANNUAL: SourceTable: MASTER
Query: A Edie ACTIVE LNS
SourceField: LOAN-NO: SourceTable: MASTER
Query: A Edie ACTIVE LNS
SourceField: LO: SourceTable: MASTER
ベストアンサー1
sed '/^Query/{N;/\nQuery/D;}' file
で始まる行に、Query
次の行をパターン空間に追加します。次の行が次から始まる場合は、Query
最初の行を削除してください。
最後の行を印刷したくない場合(最後の行が一致する場合^Query
):
sed -n '/^Query/{N;/\nQuery/D;};p' file