linux 解压中文zip文件,解压之后乱码
我的电脑环境:linux ubuntu10.10
试了很多方法都不好使,
但是下面的一种在我的电脑上就OK 。
1.zip文件解压之后文件名乱码:
第一步 首先安装7zip和convmv(如果之前没有安装的话)
在命令行执行安装命令如下:
sudo apt-get install p7zip-full convmv
第二步 假设zip文件名为y05文档.zip,那么先进入zip文件所在的目录,然后命令行执行
LANG=C 7z x y05文档.zip
convmv -f cp936 -t utf8 -r --notest *
2.文件内容乱码
原Windows rar压缩的文件,Linux系统下解压后打开里边的文件,内容全部乱码。
之所以出现乱码是因为所压缩的文件中,有的文件是以中文命名。而在windows下中文的编码一般为gbk,而linux下中文的编码一般为utf8,所以在windows下正常打开的文件,到linux下很可能会出现乱码。
解决办法为:使用命令iconv对文件内容编码进行转换。
例如我有一个文件"y05文档.txt"在windows下打开正常,而在linux下打开则会乱码,其解决办法为在终端输入:
iconv -f gbk -t utf8 y05文档.txt > y05文档.txt.utf8
之后再打开"y05文档.txt.utf8"这个文件,该文见的乱码问题就解决了。
解压win环境下打包的rar文件乱码(由于编码的缘故,在windows下打包的的中文文件,解压后时候乱码,提示为无效的编码格式,由于windows是gbk的编码格式,而ubuntu下默认使用的确实utf8编码格式,这个文件可以使用convmv这个命令解决):
重装系统之后,执行命令rar的安装命令:sudo apt-get install rar,
在linux解压rar文件,通常使用的命令:rar e a.rar,
这样之后,解压win环境下打包的rar文件,解压之后是乱码。
此时命令行执行:sudo apt-get install convmv(安装convmv),
然后执行:convmv * -f gbk -t utf8 --notest(*是需要转换的文件,--notest是对文件进行重命名)
在ubuntu下打开.TXT文件,中文显示为乱码
应该还有更好的解决方法,目前我只找到了这个适合我的电脑环境。
望赐教。