您的位置:首页 > 运维架构 > Linux

linux zip/unzip err encoding压缩解压中文文件 乱码

2012-11-06 15:47 387 查看
在linux下压缩和解压(zip,unzip)时,如果文件名中含有中文,就会由于文件名编码

(encoding)不同而出现平台(GNU/linux与win)之间制作的压缩包不能互相兼容的问

题,就是所谓的乱码.这里说一种最简单的解觉方法(2009)

首先,出现这种情况时不需要紧张,因为这只是文件名称的混乱,文件本身的内容还是正常

的.

然后,来看解觉的方法^_^:

前提:您身处2005以后的时代~

安装了zip,unzip ->以ubuntu为例 (~$ sudo apt-get install zip unzip)

1.制作可以在win下打开的zip压缩包

# sorry.暂缺

2.解压在win下制作的zip压缩包

~$ unzip -O cp936 /path/to/file.zip

-O参数指定原压缩包的编码方式.

简体中文(GBK/GB2312) 为 cp936

繁体中文(BIG5) 为 cp950

结束语.

遇到问题,先尝试 -h --help,然后man,再然后才轮到Google.

小记:因为要从压缩包里取一个文件名含中文的文件夹出来,记得以前在linux下做的

压缩包在win下会打不开,反过来win下压缩的也会解压成乱码,就试验了一下.果然,

跟以前一样还是行不通的,并没有因为时间过渡到了2009,版本升到了9.04就有所改

变.乱码依旧,直接google,结果除了台湾一个贴子看起来比较有趣外,英文的搜索没

有结果,中文搜索 linux 压缩 解压 乱码得到的全部都是关于rar,7z代替的方案,

再不然就是一篇转了无数次的更改zip源代码的沉旧文章.可是我原先的zip都做好

了,并切也(还)没有养成动辙就源代码编译的好习惯(尤其是在ubuntu下),所以就准

备reboot回我们的D版winxp...

就在^D退出Terminal的这当口,想到了-h, --help.

于是就有了本篇的故事.为什么ubuntu里面带的zip不是Info-ZIP的呢?那样也许就

可以在制做压缩包的时候也指定编码格式了.

#台湾的站

http://mrtg2.tnc.edu.tw/xoops/html/modules/weblog/details.php?blog_id=181
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: