在Linux做开发或者系统管理遇到乱码是经常的事情,主要Windows下中文的默认编码是bg2312,而Linux下是utf-8。很多时候 涉及到和Windows平台系统的通信免不了编码的转化,今天我 要推荐的是另一个shell下编码转换工具enca。用它不仅可以转换编码,还可以查看文件的原始编码,使用上也比iconv方便一些。
1. Ubuntu下安装方法:
sudo apt-get install enca2. 命令使用介绍:
1) 返回文件的编码:
enca -L zh_CN 文件名
返回例如下面的信息:
Universal transformation format 8 bits; UTF-8
2) 将当前目录下的所有文件的字符编码转换为 UTF-8 编码:
enca -L zh_CN -x utf-8 *
转码(将当前文件夹的所有txt文件全部转成utf-8编码):
enca -L zh_CN -x utf-8 *.txt
3) 假如不想覆盖原文件可以这样:
enca -L zh_CN -x utf-8 原文件 目标文件
注:其中 UTF-8 是目标编码, -L 代表了语言环境,在转换的过程中如果有些文件无法转换,enca会帮你列出来。
举例:
1.将文件转化为Ubuntu系统下能用的utf-8格式的命令:
enca -L zh_CN -x utf-8 *.m
2.将文件转化为Windows系统下能用的gb2312格式的命令:
enca -x gb2312 *.m