zip

linux中解压zip 中文乱码

北城余情 提交于 2020-04-05 23:47:53
在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。 采用了上面的第一个方法,问题解决。 另一方法为采用java的jar命令解压zip包 JAR 解压 jar xvf file.name 来源: https://www.cnblogs.com/batcom/archive/2012/12

linux unzip .zip file

半世苍凉 提交于 2020-04-05 19:42:56
1.功能作用:解压缩zip文件 2.位置:/usr/bin/unzip 3.格式用法:unzip [-Z] [-opts[modifiers]] file[.zip] [list] [-x xlist] [-d exdir] 4.主要参数 -c 将解压缩的结果显示到屏幕上,并对字符做适当的转换 -p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。 -l 显示压缩文件内所包含的文件 -f 更新现有的文件 -t 检查压缩文件是否正确,但不解压 -u 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中 -z 仅显示压缩文件的备注文字 -v 执行是时显示详细的信息。或查看压缩文件目录,但不解压 -T 将压缩文件内的所有文件的最新变动时间设为解压缩时候的时间 -x 指定不要处理.zip压缩文件中的哪些文件 -d 指定文件解压缩后所要存储的目录 -n 解压缩时不要覆盖原有的文件 -q 安静模式,执行时不显示任何信息 -o 不必先询问用户,unzip执行后覆盖原有文件 -a 对文本文件进行必要的字符转换 -j 不处理压缩文件中原有的目录路径 -aa 把所有的文件目录当作文本处理 -U use escapes for all non-ASCII Unicode -UU 忽略Unicode编码字符 -C 压缩文件中的文件名称区分大小写 -L

使用Python3解压gz、tar、tgz、zip、rar五种格式的压缩文件例子

寵の児 提交于 2020-03-31 02:57:09
使用Python3解压如下五种压缩文件:gz、tar、tgz、zip、rar 简介 gz: 即gzip,通常只能压缩一个文件。与tar结合起来就可以实现先打包,再压缩。 tar: linux系统下的打包工具,只打包,不压缩 tgz:即tar.gz。先用tar打包,然后再用gz压缩得到的文件 zip: 不同于gzip,虽然使用相似的算法,可以打包压缩多个文件,不过分别压缩文件,压缩率低于tar。 rar:打包压缩文件,最初用于DOS,基于window操作系统。压缩率比zip高,但速度慢,随机访问的速度也慢。 例子 import gzip import os import tarfile , zipfile, rarfile from library.utils.file import get_filetype from library.utils.path import make_dir from library.utils.type_conv import random_str def uncompress(src_file, dest_dir): result = get_filetype(src_file) if not result[0] : return (False, result[1], '') filefmt = result[1] result = make_dir

can we set password for zip file using minizip

核能气质少年 提交于 2020-03-25 03:56:11
问题 I want to set password for zip files using minizip.I didn't find an documentation regarding this.I know we can encrypt all the zipped file. 回答1: A complete example using C code is provided in the /contrib/minizip directory: minizip.c for the compression, miniunzip.c for the decompression. As said in the previous comment zipOpenNewFileInZip3 is for compression with password. For decompression you have to open the zipped file(s) with unzOpenCurrentFilePassword. 回答2: Googling: err =

MySql-5.7.29 zip版安装教程

会有一股神秘感。 提交于 2020-03-24 17:22:21
1.进入mysql官网下载社区服务器 https://dev.mysql.com/downloads/mysql/ 2.选择合适的zip版本下载(若下载速度过慢可复制下载链接到迅雷进行下载) 3.将下载的zip文件解压到D盘(或其他目录下) 4.在D:\Mysql\mysql-5.7.29-winx64目录下创建my.ini配置文件,复制如下内容 [mysqld] skip-grant-tables //用来无条件登录数据库,然后创建用户 port = 3306 basedir=D:\Mysql\mysql-5.7.29-winx64 datadir=D:\Mysql\mysql-5.7.29-winx64\data max_connections=200 character-set-server=utf8 default-storage-engine=INNODB sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [mysql] default-character-set=utf8 5.配置环境变量中的系统变量 然后在Path项中加入 %MYSQL_HOME%\bin 6.以 管理员身份 运行cmd 进入如下目录:D:\Mysql\mysql-5.7.29-winx64\bin 键入命令:mysqld --initialize

Python专题——详解enumerate和zip

China☆狼群 提交于 2020-03-24 10:27:55
本文始发于个人公众号: TechFlow ,原创不易,求个关注 今天是 Python专题的第7篇 文章,我们继续介绍迭代相关。 enumerate 首先介绍的是enumerate函数。 在我们日常编程的过程当中,经常会遇到一个问题。 在C语言以及一些古老的语言当中是没有迭代器这个概念的,所以我们要遍历数组或者是容器的时候,往往只能通过下标。有了迭代器之后,我们遍历的过程方便了很多,我们可以直接用一个变量去迭代一个容器当中的值。最简单的例子就是数组的遍历,比如我们要遍历items这个数组。我们可以直接: for item in items: 通过迭代器的方式我们可以很轻松地遍历数组,而不再需要下标,也不需要计算数组的长度了。但是 如果我们在循环体当中需要知道元素的下标该怎么办 ? 难道我们真的只能在下标和迭代器当中选择一个吗,比如在循环体的外面添加一个变量来记录下标? idx = 0for item in items: operation() idx += 1 这样可以解决问题,但是很麻烦,一点也不简洁,用专业的话来说一点也不 pythonic (符合Python标准的代码)。为了追求pythonic,于是有了enumerate函数,来解决了我们又想直接迭代又需要知道元素下标的情形。 它的用法也很简单,我们把需要迭代的对象或者迭代器传入enumerate函数当中,它会为我们

创建.ZIP压缩文件[CL_ABAP_ZIP]

两盒软妹~` 提交于 2020-03-23 17:48:56
SAP提供了一个类CL_ABAP_ZIP来创建.zip扩展名的压缩文件。 代码: 先将文件通过cl_gui_frontend_services =>gui_upload以BIN的文件类型上载,然后通过cl_abap_zip中的方法add() save()压缩,最后下载到本地。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 REPORT ztest _zip . TYPES : BEGIN OF bin _file , name TYPE string , size TYPE i , data TYPE solix _tab , END OF bin _file . DATA

Linux学习(含有常用命令集)

佐手、 提交于 2020-03-22 16:03:14
Linux概述 Linux是一个开源、免费的操作系统。 Linux是一个内核,在linux内核上加工包装,二次开发成Ubuntu、CentOS等发行版。 Linux常用命令集 vi,vim,文本编辑器 vi和vim的三种常见模式:正常模式,可以使用快捷键处理文件;编辑模式,按i进入编辑模式;命令行模式,按ESC进入,完成:wq离开等命令。 查找关键字,命令行下按/关键字,回车查找关键字,n查找下一个; 设置行号,命令行下:set nu和:set nonu 到文档最末行和顶行,分别在正常模式输入G和gg 移动到指定行数,先显示行号,然后输入20,最后按快捷键shift+G 开机重启和用户注销 shutdown -h now,立即关机 shutdown -r now,reboot,重启计算机 sync,把内存数据同步到磁盘 用户管理 用户属于用户组,一个用户至少属于一个用户组,用户配置信息在/etc/passwd,组信息在/etc/group useradd 用户名,添加用户 passwd 用户名,指定密码 userdel 用户名,删除用户保留home目录 id 用户名,查询用户信息 su - 切换用户名,切换用户 groupadd 组名,增加用户组 groupdel 组名,删除用户组 useradd -g 用户组 用户名,增加用户到相应用户组 usermod -g 用户组 用户名

office open xml

孤街浪徒 提交于 2020-03-22 08:49:05
Office Open XML文档格式是基于标准ZIP技术之上的. 任何一个顶层水平的文档都被存储为一个ZIP压缩包, 这意味着你可以像打开其他ZIP文件一样来打开Word文档, 然后使用内嵌入Windows Exlorer中的ZIP文件的支持能力来窥探一下文档的内部结构. 你应该注意到2007 Microsoft Office应用程序套装, 比如说Word和Excel, 为使用新文档格式的文档引入了新的文件扩展名. 举个例子, 使用Office Open XML格式存储的Word文档的扩展名为.docx, 而老的大家都比较熟悉的.doc扩展名继续用来描述使用老的二进制格式存储的Word文档身上. 一旦Word2007被安装上, 你就可以开始创建一个新的Word文档, 添加点文字"Hello World". 使用默认的文档格式保存文档, 文件名为Hello.docx, 然后关闭Word. 下一步, 使用Windows Explorer在文件系统中找到Hello.docx. 把它重命名为Hello.zip. 这使得Windows Explorer可以把这个文件识别为ZIP包. 你现在可以打开Hello.zip包了, 然后可以看到有Word创建的文件和文件夹结构. 那么别的excel2007也当然是这么一种情况

Zip file is created with windows path separator

北城余情 提交于 2020-03-21 02:08:32
问题 I create a zip file using below code. Zip is created properly, then later in my program I try to get a zip entry from this file. And if I print a zip entry name I get windows path separators(Eg \a\b\c ). But I need this like a/b/c . I have not posted reading zip entry code. public static void zipFolder(File subdirs, String ZipName) throws FileNotFoundException, IOException { try (FileOutputStream fileWriter = new FileOutputStream(location+File.seperator+ ZipName); ZipOutputStream zip = new