-
01278950 :むつ
2005-10-02 10:14
-
>>34cf7535
m_check() 間違えてました。正しくは、
m_check(){
if [ "$MC" = "Shift_JIS" ]; then
MC="sjis"
elif [ "$MC" = "EUC-JP" ]; then
MC="euc"
elif [ "$MC" = "UTF-8" ]; then
MC="utf8"
elif [ "$MC" = "ISO-2022-JP" ]; then
MC="jis"
else
MC="ascii"
fi
}
こんな感じ。
あと、expr コマンドも必要ですね。
nkf が無い場合、iconv でも次のようにすればそれなりに判別できるっぽいです。iconv はマシン依存ですが。
#!/bin/sh
CODE="UTF-8 SHIFT_JIS EUC-JP ASCII"
ICONV=/usr/bin/iconv
for i in $CODE; do
$ICONV -f $i -t ISO-2022-JP $1 > /dev/null 2>&1 && \
OUT=$i
done
if [ "$OUT" = "ASCII" ]; then
$ICONV -f ISO-2022-JP -t ASCII $1 > /dev/null 2>&1 || \
OUT="ISO-2022-JP"
fi
echo "$OUT"
#ここまで
2byte スペースで表記してますので、こぴぺしただけじゃ動きません。
sed -e "s/ /\t/g" とかなんとか。
Powered by shinGETsu.