linux下zip文件解压乱码问题的解决办法教程

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

如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624
商祺云-阿里代理、景安代理、西部代理

原因

由于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下zip文件解压乱码问题的解决办法分享的详细内容,更多请关注学派吧其它相关文章!

主题测试文章,只做测试使用。发布者:云大使,转转请注明出处:https://www.xp8.net/server/2933.html

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 2019年1月4日 下午8:42
下一篇 2019年1月4日 下午8:42

相关推荐

  • 运行和控制Nginx—命令参数详解分享

    如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 参考资料: Nginx中文文档: Nginx的启动、停止、平滑重启、信号控制和平滑升级: 命令行参数: 常用命令: -c filename:设置配置文件。 -t :不运行,而仅仅测试配置文件。nginx 将检查配置文件的语法的正确性,并尝试…

    2019年1月17日
    2.8K00
  • 在Linux上为用户设置Http代理教程-学派吧

    为了提高安全性,大多数组织、公司和机构使用网络上的代理服务器访问互联网。使用代理服务器,可以根据需要限制每个用户的访问级别。在本篇文章中,我们将介绍如何在只有终端访问权限的情况下为Linux中的用户启用HTTP代理。 启用HTTP代理 登录到要为其启用HTTP代理的Linux系统上的用户。现在在home目录中编辑.bashrc或.bash_概要文件,并在文件…

    2019年3月23日
    3.1K00
  • linux/centos中chmod命令怎么用?(详解)

    在linux中chmod命令允许用户更改文件和文件夹的访问权限;与其他命令一样,chmod命令可以通过命令行或脚本文件执行来执行。 chmod命令语法 这是使用chmod命令时的正确语法: chmod [options] mode [,mode] file1 [file2 …] 以下是chmod使用的一些常用选项: ● -f, – silen…

    服务器运维 2019年5月7日
    7.3K10
  • Linux vsftpd连接报错:500 OOPS: vsftpd的解决办法详解-学派吧-

    问题现象 云服务器 ECS Linux 系统用 vsftpd 搭建的 FTP 服务,客户端连接时提示报错 “500 OOPS: vsftpd: refusing to run with writable root inside chroot()” 处理办法 1. 在服务器上修改Vsftpd的配置文件vsftpd.conf vim /etc/vsftpd/vs…

    2019年1月1日
    3.6K00
  • 学派吧-win2008中关于如何设置计划任务执行PHP文件方法的详解-windows教程

    这篇文章主要介绍了win2008中设置计划任务执行PHP文件的方法,需要的朋友可以参考下 在网上找了些WINDOWS执行PHP的计划任务的方法,有一个写得很全,可惜在我这竟然没通过。最后不得不综合各门派的方法,才能在我这运行成功1、写一个PHP程序,命名为test.php,内容如下所示: 代码如下: <? $fp = fopen("test.…

    服务器运维 2018年12月10日
    3.3K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

工作时间:周一至周五,9:30-18:30,节假日休息

添加微信
添加微信
分享本页
返回顶部