你的位置:首页 > 操作系统

[操作系统]Linux学习之七——乱码的解决方案

一、乱码的原因

乱码是编码不统一引起的,有下面一些地方需要注意

1. Linux 系统默认支持的语系数据:这与 /etc/sysconfig/i18n 有关;
2. 你的终端界面 (bash) 的语系: 这与 LANG 这个变数有关;
3. 你的档案原本的编码;可用file指令查看
4. 开启终端机的软件,例如在 GNOME 底下的窗口接口。

 

二、dos和unix下文档的转换

dos和unix下的换行定义不同,dos下是\r\n, unix下是\n

 

dos2unix [-kn] file [newfile]

unix2dos [-kn] file [newfile]

选项与参数:

-k :保留该档案原本的 mtime 时间格式 (不更新档案上次内容经过修订的时间)

-n :保留原本的旧档,将转换后的内容输出到新档案,

 

三、编码转换

iconv --list

iconv -f 原本编码 -t 新编码 filename [-o newfile]

选项与参数:

--list :列出 iconv 支持的语系数据

-f :from ,原本的编码格式;

-t :to ,新编码格式;

-o file:是否要保留原本的档案,使用 -o 新档名,可以建立新编码档案。