整個專案要轉換為多語言版本,所有檔案儲存格式由原來gb2312轉換為utf8,為了方便,借助iconv命令寫了下面指令碼:
cat gb2utf8.sh
#!/bin/bash
if [ -z "$1" ];
then
echo "please input a directory name";
exit 1;
fiif [ -z "$2" ];
then
echo "please input the file to convert";
exit 1;
fiecho -n >error.log
for i in `find $1 -name "$2"`
do# echo $i
if [ -f $i ];then
iconv -f gb2312 -t utf8 $i -o tmp.txt 2>>error.log;
if [ $? -eq 0 ];
then
echo "$i is converted successfully!"
cp tmp.txt $i
else
echo -n "the file is $i , `date +'%y-%m-%d %h:%m:%s'`">>error.log
echo >>error.log
fi#echo $i;
fidone
if [ -f tmp.txt ];then
rm -f tmp.txt>/dev/null;
fiexit $?
呼叫:./gb2utf8.sh *** "*"
轉換***路徑下所有檔案
Ubuntu下將GBK檔案轉換為UTF8檔案
在windows下編輯的 拿到linux下不能用,原因時windows下都是gbk編碼,而linux下中文會出現亂碼情況。勉強寫了乙個指令碼,但只能改變當前目錄下的檔案,還不能巢狀改變下層資料夾裡面的檔案。還有如果已經有存在utf 8編碼的檔案,裡面又恰好有中文,會出現錯誤的。先記著,以後再改進吧 ...
把int轉換為char把int轉換為char
char ultoa unsigned long value,char string,int radix 將無符號整型數value轉換成字串並返回該字串,radix為轉換時所用基數 char ltoa long value,char string,int radix 將長整型數value轉換成字串並...
Linux下GBK檔案編碼批量轉換UTF 8命令
iconv語法 iconv f encoding t encoding inputfile 單個檔案轉換 iconv f gbk t utf 8 file1 o file2 批量轉換 find default type d exec mkdir p utf find default type f e...