首页 > 系统 > Linux > 正文

Linux系统unzip解压后中文名乱码解决方法

2024-08-27 23:59:12
字体:
来源:转载
供稿:网友

中文名在linux中必须是乱码的哦这个没话说了,当然如果有配置好的估计是可以解决,下面小编整理了一些解决unzip解压后中文名乱码问题.

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

1.vi uzip文件

2.复制一下内容(Python)

  1. #!/usr/bin/env python 
  2. # -*- coding: utf-8 -*- 
  3. # uzip.py 
  4.  
  5. import os 
  6. import sys 
  7. import zipfile 
  8.  
  9. print "Processing File " + sys.argv[1] 
  10.  
  11. file=zipfile.ZipFile(sys.argv[1],"r"); 
  12. for name in file.namelist(): 
  13.     utf8name=name.decode('gbk'
  14.     print "Extracting " + utf8name 
  15.     pathname = os.path.dirname(utf8name) 
  16.     if not os.path.exists(pathname) and pathname!= ""
  17.         os.makedirs(pathname)  //Vevb.com 
  18.     data = file.read(name) 
  19.     if not os.path.exists(utf8name): 
  20.         fo = open(utf8name, "w"
  21.         fo.write(data) 
  22.         fo.close 
  23. file.close() 
  24. 3.chmod +x uzip 
  25. 4../uzip xxxx.zip 

方法2,通过unzip行命令解压,指定字符集:

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

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

方法3,在环境变量中,指定unzip参数,总是以指定的字符集显示和解压文件,/etc/environment中加入2行.

  1. UNZIP=”-O CP936″ 
  2. ZIPINFO=”-O CP936″ 

方法4,采用java的jar命令解压zip包 JAR 解压:jar xvf file.name

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表