linux下zip文件解压后乱码解决方案

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下zip文件解压后乱码解决方案相关的知识,希望对你有一定的参考价值。

 

解决办法一,利用pyton来处理

1.vi uzip文件
2.复制一下内容(Python)

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# uzip.py
 
import os
import sys
import zipfile
 
print "Processing File " + sys.argv[1]
 
file=zipfile.ZipFile(sys.argv[1],"r");
for name in file.namelist():
    utf8name=name.decode(gbk)
    print "Extracting " + utf8name
    pathname = os.path.dirname(utf8name)
    if not os.path.exists(pathname) and pathname!= "":
        os.makedirs(pathname)
    data = file.read(name)
    if not os.path.exists(utf8name):
        fo = open(utf8name, "w")
        fo.write(data)
        fo.close
file.close()

 

3.chmod +x uzip
4../uzip xxxx.zip

 

方法2,通过unzip行命令解压,指定字符集(推荐使用)
 

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

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

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

/etc/environment中加入2行 

UNZIP=”-O CP936″
ZIPINFO=”-O CP936″

方法4,采用java的jar命令解压zip包 JAR 解压

jar xvf file.name

以上是关于linux下zip文件解压后乱码解决方案的主要内容,如果未能解决你的问题,请参考以下文章

Linux 下 zip 文件解压乱码如何解决?

linux 中 解压 unzip 中文乱码解决办法

zip压缩包解压乱码问题

Linux 下 zip 文件解压乱码解决方案,ubuntu16.10亲测可用

解决 centos下附件 zip文件解压乱码问题

解决Linux下zip文件解压乱码问题