シェルスクリプト総合@LINUX Part3at LINUX
シェルスクリプト総合@LINUX Part3 - 暇つぶし2ch181:login:Penguin
07/09/17 21:22:34 rlyHM/pf
>>179
ああ、そういや ASCII を忘れてた。w
解説は >>180 を見てもらうとして、
それを踏まえて >>174 を改良すると、こんな感じかな。
後は自分で調べてみな。

find /data | while read TARG ; do
 File=$( nkf -g <<< "$TARG" )
 case "$File" in
   Shift_JIS*) Code='sjis' ;;
   EUC-JP*) Code='euc-jp' ;;
   ISO-2022-JP*) Code='iso-2022-jp' ;;
   ASCII*|UTF-8*) echo "$TARG: $File"; continue ;;
   *) echo "$TARG: $File: Not supported format."; continue ;;  
 esac
 echo "$File: Convert from $Code to UTF-8." ## お好みで
 convmv -f "$Code" -t utf-8 "$TARG" --notest
done

>>180
> 「a.txt」と「(UTF-8な)あ.txt」と「(EUC-JPな)い.txt」が混在してると
判定はファイルごとに行うからこれで「BINARY」にはならないはず。

「(UTF-8)あ(EUC-JP)い.txt」とか、複数の文字コードで構成された
ファイル名だと誤判定と言うか、期待通りにはならないと思う。

こういうのもきちんと判定したいのなら ack がお勧め。
こんなファイル名に出くわす事はまずないだろうけどな。w


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch