DOSファイルをUnixファイルへ変換する方法
パッケージに含まれるすべてのjavaファイルについて、SJIS->EUCとCRLF->LFの2つの変換をすることになりました。
まず、Ant 1.5.3で試みましたがcopyタスクやfixCRLFタスクはこの目的にはうまく使えませんでした(なぜか文字化けします。よいやり方をご存知の方は教えてください。
PerlやRubyを使ってスクリプトを書くのがまっとうなやり方だと思いますが、今回はnkfを使いました。まず、SJIS->EUCとCRLF->LFの変換をするシェルスクリプトを準備します。
sjis2euc.sh: #!/bin/sh for f in $*; do nkf -euc -Lu $f > /tmp/tt mv $f $f.org mv /tmp/tt $f done
あとは、find + xargsでsrcディレクトリ全体に対して変換をします。
find ./src -name '*.java' | xargs sjis2euc.sh
私が知らないだけでコマンド一発でできる方法がきっとあるのでしょう。