【转】命令行使用7zip
原文网址:http://blog.csdn.net/Gildor/article/details/3358127
现在大家都用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" (-o表示输出目录,其与目录路径之间没有空格)
这样解压包含下级目录名,但不会在E:/Program Files下新建一个c文件夹,如果需要,就把输出目录设为E:/Program Files/c,这样会自动创建文件夹c。
如果要生成zip压缩包,可以直接将目标压缩包名设为c.zip,则它会自动使用zip算法压缩。