在Linux命令行下查看看文件的编码
enca 文件名
linux文件名编码批量转换
convmv -f 源编码 -t 新编码 [选项] 文件名
常用参数:
-r 递归处理子文件夹
–notest 真正进行操作,请注意在默认情况下是不对文件进行真实操作的,而只是试验。
–list 显示所有支持的编码
–unescap 可以做一下转义,比如把%20变成空格
比如我们有一个utf8编码的文件名,转换成GBK编码,命令如下:
convmv -f UTF-8 -t GBK --notest utf8编码的文件名
Linux下批量转换文件内容编码
1.使用enca,例如要把当前目录下的所有文件都转成utf-8
$enca -x utf-8 *
2,使用iconv 转换
iconv的命令格式如下:
iconv -f encoding -t encoding inputfile
比如将一个UTF-8 编码的文件转换成GBK编码
iconv -f GBK -t UTF-8 file1 -o file2
mysql gbk转utf8
linux下GBK->UTF-8文件编码批量转换脚本
find default -type d -exec mkdir -p utf/{} ;
find default -type f -exec iconv -f GBK -t UTF-8 {} -o utf/{} ;
这两行命令将default目录下的文件由GBK编码转换为UTF-8编码,目录结构不变,转码后的文件保存在utf/default目录下。
mysql gbk转utf8
经过两天的尝试,mysq数据转码终于告一段落
起因:gbk编码,用脚本python处理导入数据的时候,某些汉字乱码,为了根治,决定把数据库转码
环境linux,secretcrt,mysql 5.1.14-beta
1.数据库按gbk导出(mysqldump -uroot db_rdm --default-character-set gbk -p db_rdm.sql)
2.创建为utf8库,如(create database db_rdm_test DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; )
3.把一下shell保存执行
DB='db_rdm_test'
sed 's/gbk/utf8/g' db_rdm_gbk.sql_bak | iconv -f gb18030 -t utf-8 > $DB.sql
mysql -uroot --default-character-set=utf8 $DB < $DB.sql