先查看一些文件名的编码,这需要一个叫做enca的命令,如果你的系统没有,那么需要安装一下。
下载并安装
enca的安装很简单,就是简单的三步走:
[root@mfsmaster ~]# wget http://dl.cihar.com/enca/enca-1.13.tar.gz [root@mfsmaster ~]#tar -zxvf enca-1.13.tar.gz [root@mfsmaster ~]#cd enca-1.13. [root@mfsmaster enca-1.13]#make [root@mfsmaster enca-1.13]#make install |
看一下它的用法:
[root@mfsmaster enca-1.13]# enca Usage: enca [-L LANGUAGE] [OPTION]... [FILE]... enconv [-L LANGUAGE] [OPTION]... [FILE]... |
有两个命令,前者用于查看文件内容的编码,而后者用于改变文件的编码。
查看文件内容编码
[root@mfsmaster html]# echo $LANG zh_CN.utf-8 [root@mfsmaster html]# ls ???.html [root@mfsmaster html]# enca `ls` Unrecognized encoding |
根据使用enca的经验,enca有时候会将GBK编码识别失败,因此,该文将是GBK编码的嫌疑,而且需要注意的一点是,windows下的默认编码就是GB2312。
转换文件内容编码
我们使用该软件提供的iconv 命令来进行转换:
[root@mfsmaster html]# iconv --from-code=GB2312 --to-code=UTF-8 主页.html > 主页1.html [root@mfsmaster html]# ls 主页1.html 主页.html [root@mfsmaster html]# more `ls` :::::::::::::: 主页1.html ::::::::::::::
你好,欢迎访问Nginx,我是中文网页!!! :::::::::::::: 主页.html ::::::::::::::
?o?????·??ginx£?Β?????£?£?£? |
再看一下文件内容的编码方式:
[root@mfsmaster html]# enca `ls` 主页1.html: Universal transformation format 8 bits; UTF-8 CRLF line terminators 主页.html: Simplified Chinese National Standard; GB2312 CRLF line terminators |
很明确“主页1.html”的编码为UTF-8,而且这次“主页.html”的编码也识出来了它的编码就是GB2312。
看,我们的文件“主页1.html”不再乱码了,现在访问以下“主页1.html”:
可以了,不再是乱码了。