改行コードの確認と変換

各OSで改行コードと文字コードが異なる。
間違った改行コードでは、プログラムが正常に動作しないことがある。 そのため改行コードの確認と改行コードの変換する方法を知っておくべきでしょう。


改行コードの確認

各OSの改行コード
OS改行コードod -c での見え方
unixLF\n
Mac (OS 9以前)CR\r
Windows CR+LF\r\n


nkfコマンドによるの改行コードを確認

nkf -g [ファイル名



catコマンドによる改行コードの確認

・行末(LF)を「$」で表示
・表示不可文字(CRなど)を「^M」で表示

cat -e ファイル名




・ 行末(LF)を「$」で表示
・表示不可文字(CRなど)を「^M」・タブを「^I」で表示

cat -A ファイル名




odコマンド (Octal Dump)による改行コードの確認

・制御文字を文字表記で出力
 「CR(行頭復帰):cr」「LF(改行):nl」「タブ(水平タブ):ht」「半角空白:sp」など

od -a ファイル名




・制御文字を一般的なエスケープ表現で出力
 「CR(行頭復帰):\r」「LF(改行):\n」「タブ(水平タブ):\t」など

od -c ファイル名




・16進数表現で出力 (日本語を含む場合などに有効に)

od -h ファイル名
od -x ファイル名





改行コード変換

nkfコマンドによる改行コード変換

・nkfコマンドの改行オプション

-j(省略可能) : JISコード(ISO-2022-JP)を出力
-e : EUCコードを出力
-s : Shift-JISコードを出力
-w : UTF-8コードを出力(BOM無し)
-g(--guess) : 自動判別の結果を表示
-Lu : unix改行形式(LF)に変換
-Lw : windows改行形式(CRLF)に変換
-Lm : macintosh改行形式(CR)に変換



・LF変換とJISコードへ変換

nkf -Lu [変換したいファイル名] > [出力先のファイル名]



・LF変換とUTF8コードへ変換

nkf -Luw [変換したいファイル名] > [出力先のファイル名]



trコマンドによる改行コード変換

・Mac(CR) -> Unix(LF)

tr \\r \\n unix.txt


・Windows(CRLF) -> Unix(LF)

tr -d \\r unix.txt


・Unix(LF) -> Windows(CRLF)

perl -p -e 's/\n/\r\n/' windows.txt






[10日でおぼえるLinuxサーバー入門教室 CentOS対応]の書籍横断比較とレビュー

10日でおぼえるLinuxサーバー入門教室 CentOS対応
著者:一戸 英男
出版日:2012-11-16
出版社:翔泳社

[CentOS 6徹底活用ガイド―インターネットOSを最強アプリで使いこなそう!]の書籍横断比較とレビュー

CentOS 6徹底活用ガイド―インターネットOSを最強アプリで使いこなそう!
著者:恒川 裕康
出版日:2012-12
出版社:秀和システム




Google+