【Bash】实现指定目录下的文件编码转换,以原文件名保存
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                【Bash】实现指定目录下的文件编码转换,以原文件名保存
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                文件名: encodeExchange.sh
Linux版本:
#!/bin/bashfEncode=UTF-8 tEncode=GBK#fEncode=GBK #tEncode=UTF-8files="Classes/*"# convert file's encoding from GBK->UTF-8 or UTF-8->GBK convertFileEncode() {if [ $# -lt 3 ]; thenecho "Usage: convertFileEncode <files> <fromEncode> <toEncode>"elsefiles=$1fEncode=$2tEncode=$3for i in `ls $files`dot=`file $i | grep UTF-8 | wc -l`if [ "UTF-8" = $fEncode -a $t -eq 1 ] || [ "UTF-8" = $tEncode -a $t -eq 0 ] ; theniconv -f $fEncode -t $tEncode $i -o $iecho "iconv -f $fEncode -t $tEncode $i -o $i"fidonefi }convertFileEncode "$files" $fEncode $tEncode
 ?在Mac OS X中發現 iconv 命令并不認識"-o"選項,所以真正轉換那句要改成如下形式:
iconv -f?$fEncode -t $tEncode $i > tmp; mv tmp $i
 
 
總結
以上是生活随笔為你收集整理的【Bash】实现指定目录下的文件编码转换,以原文件名保存的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: JavaScript中的一些特殊用法(一
 - 下一篇: Elasticsearch的Groovy