背景:
有人从windows下传给你文件,你收到之后,在linux下打开发现中文全是乱码,这时候是不是很郁闷呢?
问题原因:
由于window下txt文件的编码方式为gbk,而linux下txt文件(txt
扩展名在linux下只起到标记作用)的编码方式是utf8(可能其他文件也是哟)
解决方案:
在linux系统下,我们用iconv命令解决这个问题;
我先演示一下,然后在详细讲解iconv命令的使用方法:
Redhat/CentOs/fedora系列:
$ su -c 'iconv -f gbk -t utf8 xxx.txt
>xxx.txt.utf8'
Ubuntu系列:
$ sudo iconv -f gbk -t utf8 xxx.txt
>xxx.txt.utf8
好,至此,问题基本能够解决了。
su -c 和sudo 都是不同发行版的获取root权限的方法,不需要多讲,
--from-code, -f encoding #从源编码
Convert characters from encoding
--to-code, -t encoding #到目的编码
Convert characters to encoding
xxx.txt 源文件
> 输出
xxx.txt.utf8 目的文件(可重命名)
下面我们说一下iconv 命令使用方法
$ man iconv 或者 iconv --help
可以查看具体的说明,英文的,没关系很简单,遇到不会的单词,网页版有道帮你结局(这一步很重要,这也是你今后独立解决问题的必经之路)