- 169 名前:login:Penguin mailto:sage [2007/09/17(月) 15:09:07 ID:nqz563FT]
- >>164
nkf はファイル"名"ではなくて、ファイルの"中身"についての文字コードを 調べるんですよね?テキストファイルに対して実行するとShift-JISと言う出力が得られ、 .exeファイル等に実行すると Binary と表示されました。 なので、これは全く別物です。 >>165 おお・・・ それはつまり convmv -f sjis -t utf-8 -r /data --notest で、元ファイルがsjisじゃなかったときは元ファイルがeuc-jpとして処理を繰り返すんですね。 しかしその場合、仮に1つでも元ファイルがsjisだった場合は?と言うか・・・ それ実行してみたのですが、無限ループに陥りました。何度も同じファイルを判定して これsjisじゃないよ〜って帰ってきます。 よくよく考えると -r /data で既に再帰的に繰り返す処理なのに、それをさらにwhileでループさせて いるんですよね。二重ループ状態ですか。 while ! convmv -f sjis -t utf-8 -r /data --notest ; do これで、とりあえず convmv -f sjis -t utf-8 -r /data --notest が実行される →実行された時に1つでも違うファイルが存在していてエラー →convmv -f euc-jp -t utf-8 -r /data --notest が実行される →実行された時に1つでも違うファイルが存在していてエラー またconvmv -f sjis -t utf-8 -r /data --notest が、最初にエラーで止まったファイルも含んで 最初から実行される>当然また同じファイルでエラーを起こす>convmv -f euc-jp -t utf-8 -r /data --notest が また実行されてまたこれも最初から処理してしまう>これを永遠に繰り返して無限ループに陥る。 ダメみたいですOTL >>166 --notestはずして試してみてますが、エラーで弾かれます。
|

|