ファイル全体のパターンに一致する次の行の先頭に文字を追加します。

ファイル全体のパターンに一致する次の行の先頭に文字を追加します。

テストファイル:

cat Test.txt
#EXTM3U

#EXTINF:100
a.flac

#EXTINF:20
b.flac

予想される結果

cat Test.txt
#EXTM3U

#EXTINF:100
#a.flac

#EXTINF:20
#b.flac

実験1

sed -e '/^#EXTINF/a #'  Test.txt
#EXTM3U

#EXTINF:100
#
a.flac

#EXTINF:20
#
b.flac

提案?

#私の実験では、追加したくない新しい行を追加して追加しました。

ベストアンサー1

$ sed -e '/^#EXTINF/{n;s/^/#/;}' Test.txt
#EXTM3U

#EXTINF:100
#a.flac

#EXTINF:20
#b.flac

どこ

  • nパターンスペース(この場合は一致する行^#EXTINF)を印刷してから読み込みます。Nパターン空間への入力の外部ライン
  • s/^/#/ S#新しく読んだ行の先頭で置き換え

おすすめ記事