[Linux] 改行コードを変換する

  • このエントリーをはてなブックマークに追加
  • LINEで送る

改行コードの種類

まず大前提としてOSや利用している環境によって、最近では大きく2つの改行を表す文字コードが存在します。

OS改行コード
LFLinux, macOSなど
CR+LFWindowsなど

以前のMacOSではCRが採用されていましたが、MacOSX以降はUnix系OSと同じLFとなっています。

変換の必要が出てくるシチュエーションとしては、Windows環境からLinuxなどへファイルを移した時などですね(もちろんWindowsでも環境を整えればLFで作成はできますが)

- Sponsored Link -

改行コードを変換する

nkf編

nkfコマンドの場合、-LuオプションでLFに、-LwオプションでCR+LFに変換することができます。

$ nkf -Lu foo.txt | nkf --guess
UTF-8 (LF)

$ nkf -Lw foo.txt | nkf --guess
UTF-8 (CRLF)

-d, -cオプションでも同様の結果が得られます。

$ nkf -d foo.txt | nkf --guess
UTF-8 (LF)

$ nkf -c foo.txt | nkf --guess
UTF-8 (CRLF)

sed編

LF⇛CRLF

$ sed 's/$/\r/g' foo.txt

CRLF⇛LF

$ sed 's/\r//g' foo.txt
- Sponsored Link -

ご質問やリクエストなどお気軽に。メールアドレスの入力は任意です。書き込みが反映されるまで時間がかかります。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください