- 2005/11/22 14:24:59
DOSファイルの改行コードを取り除く
DOSのテキストファイルをUNIXに持って来たときに、 DOSの改行コードがついていることがあります。これを取り除くには、次のようにします。この例では、infileはDOSの改行コードをもつファイルで、 outfileがDOSの改行コードを取り除いた結果を保存するファイルです。
$ tr -d \'\\015\' < infile > outfile
Macファイルの改行コードを取り除く
MacのテキストファイルをUNIXに持って来たときには、 Macの改行コードをUNIXのものへ変換する必要があります。これは、次のようにします。この例では、infileはMacの改行コードをもつファイルで、 outfileがUNIXの改行コードになった結果を保存するファイルです。
$ tr -d \'\\015\' \'\\012\' < infile > outfile
nkfを使ったテキスト変換方法
nkfを使うとWindows のテキストファイルを変換して、UNIX のテキストファイルを作成するためには次のようにします。
この場合は文字コードと改行コードの変換ができます。UNIX側の文字コードがutf8の場合です。
$ nkf -Lu -w windows.txt > unix.txt
JavaのコードをWindowsからLinuxへ変換
組み合わせると、こんなことも簡単にできます。
#!/bin/sh for f in `find . -name "*.java" -print` do mv $f $f.sjis nkf -e $f.sjis > $f.dos tr -d \'\\015\' < $f.dos > $f rm $f.sjis $f.dos done for f in `find . -name "*.html" -print` do mv $f $f.sjis nkf -e $f.sjis > $f.dos tr -d \'\\-15\' < $f.dos > $f rm $f.sjis $f.dos done