パターンに一致する「\」連続行を削除するには、「sed」を使用します。

パターンに一致する「\」連続行を削除するには、「sed」を使用します。

次のファイルがあります。

fff
ff
test 23 34 \
    45 44
rrr
bbb

このファイルから一致する行を削除したいが、改行をtestエスケープして行を続行し、\次の行はその行に属するものと見なす必要があります。

私がコマンドを実行すると

sed "/test/Id" file

testその行に属する次の行を含む行のみが削除されます。

\-continuedグループに属するすべての行を削除する方法は?

ベストアンサー1

test一致後、パターンの末尾にaがなくなるまで行を累積し、パターンスペースを削除するループを入力します。\

$ sed '/test/{:a; /\\$/N; ta; d;}' file
fff
ff
rrr
bbb

おすすめ記事