数百数千あるファイルを一括文字コード変換したい時に使うコマンド。(私はzen-cart-v1.3.0.2-l10n-jp-6がEUC-JPであることが気に入らなくてUTF-8に一括変換)
-Lmは殆ど使わない。-wLuが一番よく使う感じでしょうか。
文字コードの変換後は、nkfでもってきちんと文字コード変換できたか確認します。(結構ちゃんとできてる。)ちなみに英数字のみのファイルはASCIIとなってしまうのでご注意。日本語が混じっているファイルで確認してください。
find . -type f | xargs -n 10 nkf -w --overwritefind でカレントディレクトリ内のファイルをすべて拾って(-type f)、そのファイルリストをxargsに渡します。-n 10のところでファイルリストを一度に渡す数を調整します。膨大な量が予想される場合は-n 50とかにするとよいです。それからnkfに渡して-wでutf-8に文字コード変換。変換後はそのまま上書きしてしまって--overwriteしてしまいます。殆ど失敗しないので大丈夫。(ですが、コピーしておいた方がいいかもです。)
| オプション | 意味 |
| -e | EUC に変換 |
| -s | SJIS に変換 |
| -w | UTF-8 に変換 |
| -j | JIS に変換 |
| -Lu | UNIX 改行コード (LF) へ変換 |
| -Lw | Windows 改行コード (CR+LF) へ変換 |
| -Lm | (Macintosh 改行コード (CR) へ変換) |
| --overwrite | ファイルを上書き |
-Lmは殆ど使わない。-wLuが一番よく使う感じでしょうか。
文字コードの変換後は、nkfでもってきちんと文字コード変換できたか確認します。(結構ちゃんとできてる。)ちなみに英数字のみのファイルはASCIIとなってしまうのでご注意。日本語が混じっているファイルで確認してください。
nkf -g xxxx.phpとかこんな感じです。



