由于7z.exe所在路径,以及解压目录中可能包含中文特殊字符,导致解压失败,所以最好将各部分路径使用双引号包含起来。

如:CString str;
str.Format(L"\"%s\\7z.exe\" x \"%s\" -o\"%s\"", strAppPath, strZipPath, strDestDirPath);

1、.rar     有开源库unrar,可以直接在代码中解压。

2、.zip     有开元库zlib,可以直接在代码中解压

3、其他格式如tar、7z等,建议使用7zip命令行形式。

网上下载7zip安装文件,然后使用7z.exe和7z.dll即可。速度非常快

命令参数如下:

 
现在大家都用WinRAR,不知道听说过7zip的朋友多不多。7zip是一个开源的压缩软件,非常小巧,提供的功能和WinRAR差不多,但支持的格式 几乎比后者多一倍。根据我的使用经验,其7z压缩格式的压缩速度及压缩比也领先于WinRAR(WinRAR亦可识别7z格式,故不必担心兼容性问题)。 另一点重要的是,7z完全开源,包括压缩算法,而且还可以方便地使用它提供的库,在自己的程序中集成压缩功能。
这次继续研究常用工具的命令行用 法。7zip的核心程序是7z.exe,命令行格式为:7z <command> [<switches>...] <archive_name> [<file_names>...] [<@listfiles...>]。
command为操作指令,如下:
a 添加到压缩文件
b 基准测试,测试7z当前性能
d 从压缩文件中删除
e 从压缩文件中解压缩,但不包含目录结构(即所有各级文件都解压到一个目录里)
l 列出压缩文件的内容
t 测试压缩文件
u 更新文件到压缩文件
x 从压缩文件中解压缩,包含目录结构

可见,最常用的指令是a, l和x.
具体使用,举几个例子就明白了:

压缩a.txt和b.txt到c.7z: 
7z a c.7z a.txt b.txt (命令a后的第一个为目标压缩文档名,然后是文件列表)

压缩a.txt和b.txt到D:\Program Files\c.7z:
7z a D:\"Program Files"\c.7z a.txt b.txt (目录名包含空格,用引号)

列出c.7z的内容:
7z l c.7z

解压缩c.7z到E:\Program Files:
7z x c.7z -oE:Program Files\c (-o表示输出目录,其与目录路径之间没有空格)
如果文件夹 E:Program Files\c 不存在,会自动创建。

如果要生成zip压缩包,可以直接将目标压缩包名设为c.zip,则它会自动使用zip算法压缩。

各种格式的压缩包解压,7zip 命令行的更多相关文章

  1. 7-zip命令行详解

    一.简介 7z,全称7-Zip, 是一款开源软件.是目前公认的压缩比例最大的压缩解压软件. 主要特征: # 全新的LZMA算法加大了7z格式的压缩比 # 支持格式: * 压缩 / 解压缩:7z, XZ ...

  2. centos7 tar.xz格式文件的解压方法

    现在很多找到的软件都是tar.xz的格式的,xz 是一个使用 LZMA压缩算法的无损数据压缩文件格式. 和gzip与bzip2一样,同样支持多文件压缩,但是约定不能将多于一个的目标文件压缩进同一个档案 ...

  3. tar.xz格式文件的解压方法(转载)

    转自:http://bbs.chinaunix.net/thread-3610738-1-1.html 现在很多找到的软件都是tar.xz的格式的,xz 是一个使用 LZMA压缩算法的无损数据压缩文件 ...

  4. [转]Linux下 tar.xz格式文件的解压方法

    现在很多找到的软件都是tar.xz的格式的,xz 是一个使用 LZMA压缩算法的无损数据压缩文件格式. 和gzip与bzip2一样,同样支持多文件压缩,但是约定不能将多于一个的目标文件压缩进同一个档案 ...

  5. Kali Linux解压包命令:

    Kali Linux解压包命令: tar.gz格式压缩包: root@kali:~# tar -xzvf 压缩包.tar.gz -C /root/home/Desktop root@kali:~# c ...

  6. 把自解压的RAR压缩包解压到指定的软件安装目录

    原文 把自解压的RAR压缩包解压到指定的软件安装目录 今天千里独行同学给轻狂来信问了一个问题:如何把一个自解压的RAR压缩包解压到我们指定的软件安装目录.   其实,在NSIS中,我们可以灵活运用相关 ...

  7. Java压缩包解压到指定文件

    在获得一个以Zip格式压缩的文件之后,需要将其进行解压缩,还原成压缩前的文件.若是使用Java自带的压缩工具包来实现解压缩文件到指定文件夹的功能,因为jdk提供的zip只能按UTF-8格式处理,而Wi ...

  8. ubuntu解压文件命令大全

    ubuntu 下rar解压工具安装方法: 压缩功能 安装 sudo apt-get install rar 卸载 sudo apt-get remove rar 解压功能 安装 sudo apt-ge ...

  9. 7zip 命令行

    转自 http://www.cnblogs.com/langlang/archive/2010/12/01/1893866.html 7z.exe 是 7-Zip 的命令行版本.7z.exe 使用 7 ...

随机推荐

  1. 20145321《网络对抗》Exp2 后门原理与实践

    实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划启动 (3)使用MSF meterpreter生成可执行文件,利用ncat或 ...

  2. 20145327 《网络对抗》Web安全基础实践

    20145327 <网络对抗>Web安全基础实践 实践过程 webgoat开启 java -jar webgoat-container-7.0.1-war-exec.jar 在浏览器输入l ...

  3. C++ VS2013环境编译使用sqlite数据库全过程

    转载:http://www.cnblogs.com/imoon/archive/2012/11/30/2796726.html 转载:https://blog.csdn.net/hjm4702192/ ...

  4. 在Visual C#中使用XML指南之读取XML

    网站:http://www.yesky.com/155/1915155all.shtml#p1915155  

  5. git如何列出分支之间的差异commit

    答:使用git log master..diff_master 这样就可以列出在diff_master分支中包含的commit而在master分支中不包含的commit

  6. ISSCC 2017论文导读 Session 14:A 0.62mW Ultra-Low-Power Convolutional-Neural-Network Face-Recognition Pro

    A 0.62mW Ultra-Low-Power Convolutional-Neural-Network Face-Recognition Processor and a CIS Integrate ...

  7. excel的C#操作教程

    C# Excel Tutorial http://csharp.net-informations.com/excel/csharp-excel-tutorial.htm How to transfer ...

  8. 论文笔记——Rethinking the Inception Architecture for Computer Vision

    1. 论文思想 factorized convolutions and aggressive regularization. 本文给出了一些网络设计的技巧. 2. 结果 用5G的计算量和25M的参数. ...

  9. 网络压缩论文集(network compression)

    Convolutional Neural Networks ImageNet Models Architecture Design Activation Functions Visualization ...

  10. 马尔科夫随机场模型(MRF-Markov Random Field)

    原文: http://blog.sina.com.cn/s/blog_92c398b00102vs3q.html 马尔科夫过程​ 隐马尔科夫过程​​ 与马尔科夫相比,隐马尔可夫模型则是双重随机过程,不 ...