改行文字をパイプと改行文字に置き換える

改行文字をパイプと改行文字に置き換える

を使用していますksh

temp.txtパイプで区切られたデータを含むファイルがあります。

one|two|three|four|five
abc|def|pqr|lmn|xyz

例が示すように、レコードは最後の列のデータ値の後に改行文字で終わります。

しかし、レコードが次のようにパイプ区切り文字と改行文字で終わりたいと思います。

one|two|three|four|five|
abc|def|pqr|lmn|xyz|

次のコマンドを試しましたが、まだ成功しませんでした。

tr '\n' '|\n' < temp.txt

そして

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

私は何を逃したことがありませんか?

ベストアンサー1

線を接続しないと、パターンスペース\nには表示されません。行末アンカーはです。sed$

したがって、GNU sedの場合:

sed -i 's/$/|/' temp.txt

おすすめ記事