关于zip:Linux-zip-和-unzip-命令使用案例

zip 是用于创立存档文件或压缩文件的命令。这使您能够压缩文件并为硬盘驱动器或可挪动驱动器上的其余文件创建更多空间。此外,将文件 / 目录压缩使它们更便宜,更易于上传,下载甚至通过电子邮件发送它们。有压缩就有解压缩,咱们应用 unzip 命令来解压缩文件并独自拜访它们。 在开始探讨 zip 和 unzip 命令之前,让咱们看看如何从命令行装置这些命令 装置 zip 和 unzip 命令在 Ubuntu / Debian / Linux Mint 上装置,运行上面的命令 $ sudo apt install -y zip unzipor$ sudo apt-get install -y zip unzip在 CentOS / RHEL / Fedora 上装置,运行上面的命令 $ sudo yum install -y zip unzipor$ sudo dnf install -y zip unzipZip 命令压缩文件就像ABC一样简略,语法如下 $ zip OPTIONS archive.zip file 在你持续之前,有几点须要思考 在压缩文件之前,须要对正在压缩的文件和目录地位具备写权限解压缩或提取文件时,用户领有文件 / 目录所有权(1) 应用 zip 命令压缩单个文件和多个文件假如当前目录中有文件 reports1.txt,将其压缩到名为 reports.zip 的归档文件中。 ...

November 4, 2022 · 2 min · jiezi

关于zip:libzip开发笔记一libzip库介绍编译和工程模板

若该文为原创文章,转载请注明原文出处本文章博客地址:https://blog.csdn.net/qq21497936/article/details/111876926长期继续带来更多我的项目与技术分享,征询请加QQ:21497936、微信:yangsir198808 红瘦子(红模拟)的博文大全:开发技术汇合(蕴含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬联合等等)继续更新中…(点击传送门) Qt开发专栏:三方库开发技术 前言 Qt应用一些压缩解压性能,抉择libzip库,libzip库比拟原始,也是很多其余库的根底撑持库。 libzip libzip是一个C库,用于读取,创立和批改zip档案。能够从数据缓冲区,文件或间接从其余zip归档文件间接复制的压缩数据中增加文件。在不敞开存档的状况下所做的更改能够还原。 以后版本是1.7.3,于2020年7月15日公布。 官网:https://libzip.org/ QQ群:1047134658(点击“文件”搜寻“libzip”,群内与博文同步更新) libzip编译步骤一:解压 步骤二:Cmake配置(vs2017 x64版本) 须要zlib,之前曾经编译过vs2017 x64版本的zlib了,导入再配置 步骤三:生成工程 步骤四:关上VS2017编译 步骤五:装置install 模块化 补充:查看命令行工具帮忙和源码辅助开发ziptool.exe -husage: ziptool.exe [-ceghnrst] [-l len] [-o offset] archive command1 [args] [command2 [args] ...]Supported options are: -c check consistency -e error if archive already exists (only useful with -n) -g guess file name encoding (for stat) -h display this usage -l len only use len bytes of file -n create archive if it doesn't exist -o offset start reading file at offset -r print raw file name encoding without translation (for stat) -s follow file name convention strictly (for stat) -t disregard current archive contents, if anySupported commands and arguments are: add name content add file called name using content add_dir name add directory add_file name file_to_add offset len add file to archive, len bytes starting from offset add_from_zip name archivename index offset len add file from another archive, len bytes starting from offset cat index output file contents to stdout count_extra index flags show number of extra fields for archive entry count_extra_by_id index extra_id flags show number of extra fields of type extra_id for archive entry delete index remove entry delete_extra index extra_idx flags remove extra field delete_extra_by_id index extra_id extra_index flags remove extra field of type extra_id get_archive_comment show archive comment get_extra index extra_index flags show extra field get_extra_by_id index extra_id extra_index flags show extra field of type extra_id get_file_comment index get file comment get_num_entries flags get number of entries in archive name_locate name flags find entry in archive print_progress print progress during zip_close() rename index name rename entry replace_file_contents index data replace entry with data set_archive_comment comment set archive comment set_extra index extra_id extra_index flags value set extra field set_file_comment index comment set file comment set_file_compression index method compression_flags set file compression method set_file_dostime index time date set file modification time and date (DOS format) set_file_encryption index method password set file encryption method set_file_mtime index timestamp set file modification time set_file_mtime_all timestamp set file modification time for all files set_password password set default password for encryption stat index print information about entrySupported flags are: 0 (no flags) C ZIP_FL_NOCASE c ZIP_FL_CENTRAL d ZIP_FL_NODIR l ZIP_FL_LOCAL u ZIP_FL_UNCHANGEDSupported compression methods are: default deflate storeSupported encryption methods are: none AES-128 AES-192 AES-256 PKWAREThe index is zero-based. ...

January 4, 2021 · 2 min · jiezi

关于zip:ZIP-也能边下载边解压流式解压技术揭秘

简介: 对于一个 ZIP 文件,因为规范的解压形式总是从读取文件的开端开始的,因而必须下载残缺个 ZIP 解压后能力拜访。当用户通过网络拜访 ZIP 文件时,下载解压所带来的耗时将大大降低用户体验。那么能不能边下载边解压呢?阿里巴巴娱乐技术 喻远将介绍 ZIP 流式解压的原理和技术实现门路。 关上网络上的 ZIP 文件须要几步?下载,解压,拿到所有文件。面对一个 ZIP,能不能「边下边播」、「按需下载」? 往年 6 月,优酷绘本技术团队开发出新的解压形式——ZIP 流式解压技术,并胜利利用在优酷绘本秒开我的项目中,30M+ 绘本均匀加载时长只需 0.91s,加载耗时比传统的解压形式升高了 88.3%,让用户的浏览体验直线晋升。理论比照成果如下: 本文将介绍 ZIP 流式解压的原理和技术实现门路,心愿为大家带来启发,将 ZIP 流式解压技术更多的利用到业务中。 一 什么是ZIPZIP 是一种文件格式,定义了如何将多个文件、数据块组织在一起造成一个残缺的文件。例如咱们常见的 .apk,.ipa,.sketch,都是ZIP文件。通常程序是这样创立 ZIP 文件的: 压缩单个文件造成单文件数据块;在数据块前后增加文件形容信息;对每个待压缩的文件反复以上步骤后,拼接所有数据造成更大的数据块;提取所有文件形容信息,生成一份「文件目录」,附在最初一个数据块的尾部。 咱们将文件前部形容信息称为 Local File Header,文件后部形容信息称为 Data Descriptor, 被压缩的文件自身称为 File Data,将最初的文件目录称为 Central Directory。以上所有合在一起,就是一个规范的 ZIP 文件。如下图: 一个规范的解压形式总是从读取 ZIP 文件开端开始的,咱们以解压上图的 File Data 1 为例: 首先在 ZIP 文件开端找到 Central Directory 数据块;在 Central Directory 数据块中找到 File Header 1;从 File Header 1 中读取 Local File Header 1 的偏移量和 File Data 1 的相干信息;依据偏移量找到 Local File Header 1;读取 Local File Header 1;解密 File Data 1(如果须要);解压 File Data 1;读取 Data Descriptor 1;应用 File Header 1 中保留的 CRC-32 做校验步骤 7 中计算的 CRC-32,以确保解压后的数据完整性。规范解压形式存在的有余能够发现,规范的解压强依赖尾部的 Central Directory。当 ZIP 文件存储在 cdn 上时,哪怕咱们只想拜访其中的一个文件,也必须下载整个 ZIP 解压后才可拜访。如果 ZIP 文件有 100 MB,然而咱们只须要拜访其中的某一个 10 KB 的文件,那么下载整个 ZIP 将是对流量的微小节约。 ...

September 9, 2020 · 2 min · jiezi