文字コード変換コマンドnkfの使い方まとめ linux – Knowledge Database IT.
構文
$ nkf オプション ファイル名 [> 出力ファイル名]
オプション一覧
-j(省略可能) : JISコード(ISO-2022-JP)を出力 -e : EUCコードを出力 -s : Shift-JISコードを出力 -w : UTF-8コードを出力(BOM無し) -Lu : unix改行形式(LF)に変換 -Lw : windows改行形式(CRLF)に変換 -Lm : macintosh改行形式(CR)に変換 -g(–guess) : 自動判別の結果を表示 –overwrite : 引数のファイルに直接上書き –version : バージョン情報を表示(インストール済チェック)
使用例 ・文字コードチェック
$ nkf -g example.csv
・文字コード変換(UTF-8)
$ nkf -w –overwrite example.csv
・変換されているかチェック
$ nkf -g example.csv
UTF-8
文例 ・文字コード変換(JISコード/ISO-2022-JP)
$ nkf -j –overwrite example.csv
・文字コード変換(EUC-JP)
$ nkf -e –overwrite example.csv
・文字コード変換(Shift-JIS)
$ nkf -s –overwrite example.csv
・文字コード変換(UTF-8)
$ nkf -w –overwrite example.csv
・ディレクトリ内txtファイル全てを、文字コード→UTF-8、改行→unix形式(LF)に変換
$ nkf -w Lu –overwrite *.txt
・ディレクトリ内txtファイル全てを、文字コード→Shift_JIS、改行→windows形式(CRLF)に変換
$ nkf -s Lw –overwrite *.txt
失敗例
$ nkf -w example.csv > example.csv
とやると、中身が空っぽになるので注意。 きちんと–overwriteオプションをつけるか、違う名前で変換後mvコマンドで上書きすること。
応用 ・ディレクトリ以下のPHPファイルを全てUTF-8に変換する
$find -name ‘*.php’ | xargs nkf –overwrite -w