sedを使用してテキストファイルの特定の文字の後に空白行を追加するには?

sedを使用してテキストファイルの特定の文字の後に空白行を追加するには?

代わりに「|」後ろに空行を挿入したい。

inp.txt
abcd |
efgh |
ijkl |
out.txt
abcd 

efgh

ijkl

これはUnixにあります。私が試すたびに

sed -i.bak 's/|/\n/g' inp.txt

それが返すものはすべて

abcd n
efgh n
ijkl n

ベストアンサー1

\nバックスラッシュを追加し\たら、Enter次のコマンドを使用するのではなく、キーを押し続けることができます。

sed -i.bak 's/|/\
/g' inp.txt

|$行の末尾に残っている空白文字()を置き換えるには、次のようにします。

sed -i.bak 's/ |$/\
/' inp.txt

gロゴを交換する必要はありません。

おすすめ記事