linux下zip文件解压乱码问题的解决办法分享

发布时间 - 2017-06-02 00:00:00    点击率:

本篇文章主要介绍了解决linux下zip文件解压乱码问题,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

原因

由于zip格式并没有指定编码格式,Windows下生成的zip文件中的编码是GBK/GB2312等,因此,导致这些zip文件在Linux下解压时出现乱码问题,因为Linux下的默认编码是UTF8。

解决方案一

使用7z解压。

安装p7zip和convmv

# fedora
$ su -c 'yum install p7zip convmv'
# ubuntu
$ sudo apt-get install p7zip convmv

执行一下命令解压缩

# 使用7z解压缩
$ LANG=C 7za x your-zip-file.zip
# 递归转码
$ convmv -f GBK -t utf8 --notest -r .

解决方案二

在windows上压缩的文件,是以系统默认编码中文来压缩文件。由于zip文件中没有声明其编码,所以linux上的unzip一般以默认编码解压,中文文件名会出现乱码。

虽然2005年就有人把这报告为bug, 但是info-zip的官方网站没有把自动识别编码列入计划,可能他们不认为这是个问题。Sun对java中存在N年的zip编码问题,采用了同样的处理方式。

有2种方式解决问题:

1. 通过unzip行命令解压,指定字符集

unzip -O CP936 xxx.zip (用GBK, GB18030也可以)

有趣的是unzip的manual中并无这个选项的说明, unzip --help对这个参数有一行简单的说明。

2. 在环境变量中,指定unzip参数,总是以指定的字符集显示和解压文件

/etc/environment中加入2行

UNZIP="-O CP936"
ZIPINFO="-O CP936"

这样Gnome桌面的归档文件管理器(file-roller)可以正常使用unzip解压中文,但是file-roller本身并不能设置编码传递给unzip。


# linux  # 递归  # 解压缩  # 的是  # 出现乱码  # 就有  # 有一定  # 感兴趣  # 自动识别  # 采用了  # 解决问题 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  Laravel Session怎么存储_Laravel Session驱动配置详解  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  潮流网站制作头像软件下载,适合母子的网名有哪些?  利用python获取某年中每个月的第一天和最后一天  iOS正则表达式验证手机号、邮箱、身份证号等  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  如何生成腾讯云建站专用兑换码?  焦点电影公司作品,电影焦点结局是什么?  在线制作视频网站免费,都有哪些好的动漫网站?  高端智能建站公司优选:品牌定制与SEO优化一站式服务  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  Claude怎样写约束型提示词_Claude约束提示词写法【教程】  Laravel Seeder填充数据教程_Laravel模型工厂Factory使用  实例解析Array和String方法  如何快速配置高效服务器建站软件?  Laravel如何实现登录错误次数限制_Laravel自带LoginThrottles限流配置【方法】  Laravel如何实现API版本控制_Laravel版本化API设计方案  免费视频制作网站,更新又快又好的免费电影网站?  JS去除重复并统计数量的实现方法  如何在IIS中新建站点并解决端口绑定冲突?  Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】  php静态变量怎么调试_php静态变量作用域调试技巧【解答】  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  打造顶配客厅影院,这份100寸电视推荐名单请查收  郑州企业网站制作公司,郑州招聘网站有哪些?  详解Android中Activity的四大启动模式实验简述  在centOS 7安装mysql 5.7的详细教程  Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势  如何挑选最适合建站的高性能VPS主机?  如何在阿里云虚拟主机上快速搭建个人网站?  南京网站制作费用,南京远驱官方网站?  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  做企业网站制作流程,企业网站制作基本流程有哪些?  laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法  Laravel中的withCount方法怎么高效统计关联模型数量  Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】  java中使用zxing批量生成二维码立牌  jquery插件bootstrapValidator表单验证详解  教你用AI将一段旋律扩展成一首完整的曲子  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  使用C语言编写圣诞表白程序  php做exe能调用系统命令吗_执行cmd指令实现方式【详解】  如何构建满足综合性能需求的优质建站方案?