linux下的文件和目录的编码转换等问题

首先确定你的Linux主机系统支持本身中文字符码显示:

查看本机locale:locale -a

安装方式:apt-get install locales

设置命令:dpkg-reconfigure locales

【选择:zh_CN.UTF-8】

原Windows rar压缩的文件,Linux系统下解压后打开里边的文件,内容全部乱码。
之所以出现乱码是因为所压缩的文件中,有的文件是以中文命名。而在windows下中文的编码一般为gbk,而linux下中文的编码一般为utf8,所以在windows下正常打开的文件,到linux下很可能会出现乱码。
解决办法为:使用命令iconv对文件内容编码进行转换。例如我有一个文件"linux常用命令"在windows下打开正常,而在linux下打开则会乱码,其解决办法为在终端输入:
 

iconv -f gbk -t UTF-8 测试文件2.txt > 测试文件2-new.txt


之后再打开 " 测试文件2-new.txt " 这个文件,该文见的乱码问题就解决了。

win下参与Linux等项目开发,建议项目使用utf-8编码形式

WIN下新建中文名称TXT文本文件:

重命名

写入文件内中文测试文本

上传到LINUX下

初次查看文件内的文本内容

中文内容是以乱码显示

iconv -f gbk -t UTF-8 测试文件2.txt > 测试文件2-new.txt

转WIN下默认中文GBK/GB2312编码文件为:UTF-8 编码格式,批量转换123目录下所有文件到 /utf/123 下
===================================================================
find 123 -type d -exec mkdir -p utf/{} \;
find 123 -type f -exec iconv -f GBK -t UTF-8 {} -o utf/{} \;
================================================

再次查看文件内容:

vim 测试文件2-new.txt

转换编码后显示正常@!

 

Linux/Unix | 评论(0) | 引用(0) | 阅读(7399)