改行コード(CR/LF)の調整
テキストファイルの改行コードは,unix 系では LF (0x0A),Windows では CRLF (0x0D 0x0A) である. nkf コマンドの -L オプションを使って,両者を相互に変換する.
◇ 変換の前後で改行コードを確認するには,file コマンドを使う.CRLF のファイルでは「with CRLF line terminators」と表示される.
file hoge.sh
unix 形式の改行コード (LF) から Windows 形式の改行コード (CRLF) への変換
nkf -Lw hoge.sh > hoge2.sh
◇ hoge.sh の中身を次のように作っておく
◇ hoge.sh を Windows 形式の改行コードに変換すると,シェルスクリプトとして機能しない. 1 行目の #!/bin/sh の末尾に CR が付き,インタプリタのパスが「/bin/sh」+CR と解釈されるためである. シェルスクリプトの改行コードは LF にする.
Windows 形式の改行コード (CRLF) から unix 形式の改行コード (LF) への変換
nkf -Lu hoge2.sh > hoge3.sh
◇ 元のファイルを直接書き換える場合は,--overwrite オプションを使う.
nkf -Lu --overwrite hoge2.sh
◇ 改行コードを指定するオプションは次の通りである.
- -Lu: LF (unix 形式)
- -Lw: CRLF (Windows 形式)
- -Lm: CR (旧 Mac OS 形式)
FreeBSD に nkf のインストール
パッケージからインストールする場合は,root 権限で次のコマンドを実行する.
pkg install ja-nkf
ports からインストールする場合は,root 権限で次のコマンドを実行する.
cd /usr/ports/japanese/nkf
make install clean
インストール完了の確認.エラーメッセージが出ていないこと.次のコマンドでバージョンが表示されることを確認する.
nkf --version